Изучение языка программирования
Турбо Паскаль (Turbo Pascal)

На этом сайте можно: скачать среду программирвания Турбо Паскаль, изучить язык программирования Турбо Паскаль, а так же скачать программы на языке Турбо Паскаль!
Решенные задачи на языке Паскаль



Условие задачи - прислали на e-mail.

Написать программу посещения студентами дисплейного класса. Учесть приход и уход студентов в течение занятий. Данные представить в виде линейного списка.

TYPE
Link=^data;                          {указатель на тип данных      }
data=record                      {описание самого типа данных      }
      FIO:string[50];                {ФИО                          }
      timeStart,timeEnd:string[5];   {время нчала и конца (15:03)  }
      next:Link;                     {указатель на следующую запись}
     end;

VAR
P,First:Link;                        {указатели на запись: текущую, первую}
m:byte;                              {для меню                            }

{добавление новой записи в список}
PROCEDURE addFirst(a:Link);
BEGIN
a^.next:=First;
First:=a;
END;

{ввод данных в текущую запись}
PROCEDURE InputData;
BEGIN
P:=new(Link);
write('Введите ФИО: ');
readln(P^.FIO);
write('Введите время начала: ');
readln(P^.timeStart);
write('Введите время окончания: ');
readln(P^.timeEnd);
addFirst(P);
END;

{вывод на экран}
PROCEDURE Print;
var
curr:Link;                           {указатель на очередную запись        }
count:integer;                       {счетчик                              }
BEGIN
count:=0;
curr:=First;                         {установить указатель на первую запись}
while curr<>nil do
begin
 inc(count);
 writeln(count,') ',curr^.FIO:55,curr^.timeStart:10,curr^.timeEnd);
 curr:=curr^.next;                   {перейти к очередной записи          }
end;
readln;
END;
{===== основная программа =====}
BEGIN
new(P);                              {создать новую динамическую переменную и установить на нее указатель}

{цикл меню}
repeat
InputData;                           {ввод данных   }

writeln;
writeln('1 - добавить в список');
writeln('2 - распечатать весь список и выйти');
write('=>');
readln(m);
until m=2;

Print;                               {вывод на экран}
END.
Вообщем это самый простой пример на эту тему...
Скачать исходник