Презентация на тему «Записи в языке программирования Pascal»

0
0
Материал опубликован 29 November 2023

Записи в языке программирования Pascal Учитель информатики – Данцер А.В МБОУ Мохсоголлохская СОШ с УИОП

Многообразие информации нельзя свести только к какому-то одному типу данных. Указывая положение точки в пространстве, мы можем воспользоваться одним и тем же типом для указания ее координат, но, описывая человека, мы должны указать его имя, рост, цвет глаз и волос, то есть в одном описании объединим разнородную информацию.

Данные описывающие существенные стороны того или иного объекта путем включения в описание нескольких, часто разнотипных, элементов, называют записью (record). Данные описывающие существенные стороны того или иного объекта путем включения в описание нескольких, часто разнотипных, элементов, называют записью (record). В языке Паскаль запись определяется путем указания служебного слова record и перечисления входящих в запись элементов с указанием типов этих элементов.

Определение Запись – структурированный комбинированный тип данных, состоящий из фиксированного числа компонент (полей) разного типа.

Пример  type < имя _ типа >=record    <имя_поля1>: тип;     <имя_поля2>: тип;     ………………….     <имя_поля K >: тип  end ; где record – служебное слово, а <имя_типа> и <имя_поля> - правильные идентификаторы языка Паскаль.

Пример фрагмента программы описания записи Паскаля Type anketa=record    fio: string[45];     pol: char;     dat_r: string[8];     adres: string[50];     curs: 1..5;     grupp: string[3]; end; Такая запись называется двухуровневой

Type anketa1=record    fio: string[45];     pol: char;     dat_r: record;    god: integer;     mes: string[10];     den: 1..31; end;  adres: record    gorod: string[25];     ulica: string [20];     dom, kv: integer; end;  curs: 1..5;     grupp: string[3];  end; Пример фрагмента программы описания записи Паскаля

Задача 1. program primer1;  type anketa=record     fio: string[45];     dat_r: string[8];     adres: string[50];     curs: 1..5;     grupp: string[3] end;  var student: anketa;  begin     writeln (‘введите сведения о студенте’);     {обратите внимание, ввод каждого поля осуществляется отдельно}     writeln (‘введите фамилию, имя и отчество’);     readln (student.fio);     writeln (‘введите дату рождения’);     readln (student.dat_r);      writeln (‘введите адрес’);   readln(student.adres);   writeln (‘введите курс’);     readln(student.curs);     writeln (‘введите группу’);     readln (student.grupp);     writeln (‘ввод закончен’);     writeln ;     {обратите внимание, что вывод записи осуществляется по полям}     writeln (‘фамилия студента: ’, student . fio );     writeln(‘ дата рождения : ’, student.dat_r);     writeln(‘ адрес : ’, student.adres);     writeln(‘ курс : ’, student.curs);     writeln(‘ группа : ’, student.grupp);  end. Пусть нам необходимо заполнить сведения о студенте (Ф.И.О., дата рождения, адрес, курс и группа), а затем вывести эти сведения на экран.

Усложним задачу Пусть нам необходимо иметь сведения о многих студентах, например, нашего факультета. Следовательно, необходимо организовать массив записей Паскаля. А затем из общего списка вывести фамилии студентов 2-го курса. program primer 2 ;  type anketa=record     fio: string[45];     dat_r: string[8];     adres: string[50];     curs: 1..5;     grupp: string[3] end;  var student: array [1..100] of anketa;     I: integer;  begin     {последовательно вводим каждую запись}     for I:=1 to 100 do     begin        writeln (‘введите сведения о’, I , ‘-м студенте’);        writeln (‘введите фамилию, имя и отчество’);        readln (student[I].fio);        writeln (‘введите дату рождения’);        readln (student[I].dat_r);        writeln (‘введите адрес’);        readln(student[I].adres);        writeln (‘введите курс’);        readln(student[I].curs);        writeln (‘введите группу’);        readln (student[I].grupp);     end;     writeln (‘ввод закончен’);     writeln ;     {просматриваем массив записей и выбираем только студентов 2-го курса }     for I:=1 to 100 do        if student[I].curs=2 then           writeln(‘ фамилия студента : ’, student[I].fio);  end.

Оператор присоединения или как избавиться от префикса Префикс – обязательная предшествующая часть составного идентификатора для имен полей в структуре типа запись Паскаля. Очень часто у программиста возникает желание не указывать префикс в имени полей, например, когда идет постоянное использование одних и тех же записей. В языке Паскаль предусмотрена такая возможность, реализуемая при помощи оператора присоединения, который в общем виде выглядит так: with <имя_записи> do <действие с полем записи>; Следует обратить внимание на то, что после служебного слова do может стоять только один оператор, но он может быть составным (любая последовательность операторов, заключенная в операторные скобки begin end ).

Пример фрагмента программы c записью и префиксом Паскаля for I:=1 to 100 do     with student[I] do     begin        writeln (‘введите сведения о’, I , ‘-м студенте’);        writeln (‘введите фамилию, имя и отчество’);        readln (fio);        writeln (‘введите дату рождения’);        readln (dat_r);        writeln (‘введите адрес’);        readln(adres);        writeln (‘введите курс’);        readln(curs);        writeln (‘введите группу’);        readln (grupp);     end;

в формате MS Powerpoint (.ppt / .pptx)
Комментарии
Комментариев пока нет.

Похожие публикации