Разделы презентаций


Динамические структуры-паскаль

Переменные - указателиПеременная – указатель хранит адрес переменной.Переменная -указательОбычная -переменнаяИмя:Тип;Имя- имя переменной-указателя; Тип – тип переменной, на которую может указывать переменная-указатель Имя

Слайды и текст этой презентации

Слайд 1Динамические структуры

Динамические структуры

Слайд 2Переменные - указатели
Переменная – указатель хранит адрес переменной.



Переменная -указатель
Обычная -переменная
Имя:Тип;
Имя-

имя переменной-указателя; Тип – тип переменной, на которую может указывать

переменная-указатель Имя
Переменные - указателиПеременная – указатель хранит адрес переменной.Переменная -указательОбычная -переменнаяИмя:Тип;Имя- имя переменной-указателя; Тип – тип переменной, на

Слайд 3В начале работы программы переменная-указатель «ни на что не указывает».
Указатель

пустой – NIL.
P2,P1:^integer;
P3:^real;
…………
P2:=P1;
Если Р указывает на I, то в результате

выполнения P^:=5;, значение I будет равно пяти.


В начале работы программы переменная-указатель «ни на что не указывает».Указатель пустой – NIL.P2,P1:^integer;P3:^real;…………P2:=P1;Если Р указывает на I,

Слайд 4Динамические переменные
Динамической переменной называется переменная, память для которой выделяется во

время работы программы. Выделение памяти для динамической переменной осуществляется вызовом

процедуры NEW. У NEW один параметр-указатель на переменную определенного типа, память для которой надо выделить. Пусть Р – указатель на real, то в результате NEW(p), будет создана переменная типа real, и переменная-указатель будет содержать адрес этой переменной.
У динамической переменной нет имени, поэтому обратиться к ней можно только при помощи указателя.
Динамические переменныеДинамической переменной называется переменная, память для которой выделяется во время работы программы. Выделение памяти для динамической

Слайд 5Пример программы
//uses crt;
Var
p1,p2,p3:^integer;
Begin
New(p1);
New(p2);
New(p3);
writeln('Введите 2 числа');
Readln(p1^,p2^);
P3^:=p1^+p2^;
writeln('Сумма чисел = ',p3^);
End.


Пример программы//uses crt;Varp1,p2,p3:^integer;BeginNew(p1);New(p2);New(p3);writeln('Введите 2 числа');Readln(p1^,p2^);P3^:=p1^+p2^;writeln('Сумма чисел = ',p3^);End.

Слайд 6Связанные списки
Указатели и динамические переменные позволяют создавать сложные динамические структуры

данных, такие как связанные списки и деревья.









. . .

Связанные списки

Связанные спискиУказатели и динамические переменные позволяют создавать сложные динамические структуры данных, такие как связанные списки и деревья.

Слайд 7Каждый элемент списка представляет собой запись, состоящую из двух частей.

1-я – информационная. 2-я – обеспечивает связь со следующим, и

возможно, с предыдущим элементом списка.
Список, в котором обеспечивается связь только со следующим элементом, называется односвязным.
Каждый элемент списка представляет собой запись, состоящую из двух частей. 1-я – информационная. 2-я – обеспечивает связь

Слайд 8Пример
Type
P_stud=^student;
Student=record
Fam:string[20];
Name:string[20];
Group:byte;
Address:string[60];
Next:p_stud;{указатель на следующий элемент списка}
End;
Var
Head:p_stud;

ПримерTypeP_stud=^student;Student=record		Fam:string[20];		Name:string[20];		Group:byte;		Address:string[60];		Next:p_stud;{указатель на следующий элемент 	списка}End;VarHead:p_stud;

Слайд 9Добавлять данные можно в начало, в конец или в нужное

место списка.
head
NIL
Список пустой:head ни на что не указывает
NIL
Иванов

head
После добавления одного

элемента head указывает на этот элемент
Добавлять данные можно в начало, в конец или в нужное место списка.headNILСписок пустой:head ни на что не

Слайд 10type
p_student=^student;
student=record
name:string[20];

next:p_student;

end;
var
head:p_student;
curr:p_student;
buf:string[20];
begin
while buf<>'*' do
begin
write('фамилия->');
readln(buf);
if buf<>'*' then
begin
new(curr);
curr^.name:=buf;
curr^.next:=head;
head:=curr;
end;
end;
writeln('*****Введенный список *****');
curr:=head;
while curr<>nil do
begin
writeln(curr^.name);
curr:=curr^.next ;
end;
end.
typep_student=^student;student=record       name:string[20];       next:p_student;

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика