Представить полученную информацию в виде списка характеристик - Pascal
Формулировка задачи:
В результате проведённого анкетирования Иванова Ивана Ивановича были определены ответы на поставленные вопросы (год рождения, семейное положение, увлечения, любимые времена года). Представить полученную информацию в виде списка характеристик, каждой из которых соответствует список значений характеристики. Определить процедуры добавления и удаления для характеристик и их значений.
Решение задачи: «Представить полученную информацию в виде списка характеристик»
textual
Листинг программы
- program pr;
- type
- prec = ^trec;
- trec = record
- born: integer;
- famst: string[50];
- hobby: string[50];
- season: string[50];
- next: prec;
- end;
- var
- list, p: prec;
- b: integer;
- s1, s2, s3: string;
- procedure addtolist(anum: integer; const s1, s2, s3: string);
- var
- p: prec;
- begin
- new(p);
- p^.born := anum;
- p^.famst := s1;
- p^.hobby := s2;
- p^.season := s3;
- p^.next := list;
- list := p;
- end;
- procedure printlist;
- var
- p: prec;
- begin
- p := list;
- while p <> nil do
- begin
- writeln('Дата рождения: ',p^.born, '. Семейное роложение: ', p^.famst, '. Увлечения: ', p^.hobby, '. Любимое время года: ', p^.season);
- p := p^.next;
- end;
- end;
- begin
- list := nil;
- writeln('Введите дату рождения');
- readln(b);
- writeln('Введите семейное положение');
- readln(s1);
- writeln('Введите хобби');
- readln(s2);
- writeln('Введите любимое время года');
- readln(s3);
- addtolist( b, s1, s2, s3);
- writeln;
- writeln('Иванов Иван Иванович: ');
- printlist;
- end.
Объяснение кода листинга программы
- Объявляется тип prec как указатель на trec и trec как запись, содержащую четыре поля:
born
(типа integer),famst
,hobby
иseason
(типа string[50]) и указатель на следующий элемент спискаnext
. - Объявляются переменные list и p типа prec (указатель на trec), b типа integer и s1, s2, s3 типа string.
- Объявляется процедура addtolist, которая принимает четыре аргумента: anum (типа integer) и константы s1, s2, s3 (типа string).
- В процедуре addtolist создается новый элемент списка и присваиваются значения его полей (born, famst, hobby, season), а также указатель на следующий элемент.
- Объявляется процедура printlist, которая выводит на экран значения полей born, famst, hobby, season для каждого элемента списка.
- Процедура printlist проходится по списку и выводит информацию о каждом элементе.
- В основной программе инициализируется список list, затем пользователю предлагается ввести информацию о дате рождения, семейном положении, хобби и любимом времени года, после чего эта информация добавляется в список используя процедуру addtolist.
- Наконец, на экран выводится информация о сформированном списке с помощью процедуры printlist.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д