![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Сестренке сдавать надо в обеих программах.
А мы Дельфи в юности и не учили. На паскале набросал, на дельфи не получается ![]() Там должно быть все просто: на форме три кнопки и к кнопкам соответственно события. Код:
program Ticket; uses crt; type rec=record day:string; town:string; num:integer; end; var i,j,n,max,maxn,md,maxd:integer; maxt:string; records:array[1..100] of rec; f:text; procedure readfile;{Чтение из файла} begin assign(f,'c:\dbf1.txt'); reset(f); n:=0; while not eof(f) do begin inc(n); readln(f,records[n].day); readln(f,records[n].town); readln(f,records[n].num); end; close(f); end; procedure writefile;{Запись в файл} begin clrscr; readfile; assign(f,'c:\dbf1.txt'); append(f); writeln('Введите день:'); readln(records[n+1].day); writeln('Введите гоод:'); readln(records[n+1].town); writeln('Введите кол-во билетов:'); readln(records[n+1].num); writeln(f,records[n+1].day); writeln(f,records[n+1].town); writeln(f,records[n+1].num); close(f); writeln('Для продолжения нажмите Enter'); readln; end; procedure viewfile;{Просмотр файла} begin clrscr; readfile; writeln('День Город Билетов'); max:=0; md:=0; for i:=1 to n do begin maxn:=records[i].num; maxt:=records[i].day; maxd:=i; writeln(records[i].day:2,' ',records[i].town:10,' ',records[i].num); for j:=i+1 to n do if records[j].day=maxt then maxn:=maxn+records[j].num; if maxn>max then begin max:=maxn; md:=maxd; end; end; writeln('Наибольшее кол-во билетов ',max,' продано в ',records[md].day,' день'); max:=0; md:=0; for i:=1 to n do begin maxn:=records[i].num; maxt:=records[i].town; maxd:=i; for j:=i+1 to n do if records[j].town=maxt then maxn:=maxn+records[j].num; if maxn>max then begin max:=maxn; md:=maxd; end; end; writeln('Наибольшее кол-во билетов ',max,' продано в город ',records[md].town); writeln('Для продолжения нажмите Enter'); readln; end; {Главный моуль} begin clrscr; repeat writeln('Нажмите'); writeln('1: для записи в файл'); writeln('2: для просмотра файла'); writeln('3: для выхода из программы'); readln(i); case (ord(i)) of 1: writefile; 2: viewfile; 3: exit; end; until i=3; end. Заранее спасибо! PS Кодить нужно именно с записями и читать из файла, а не с массивами. |
#2
|
||||
|
||||
![]() тема еще актуальна
|
#3
|
|||
|
|||
![]() желательно, я конечно её запустил в консоли приписав {$APPTYPE CONSOLE} и убрав clrscr; и переписав диалоги латинскими буквами
![]() |
#4
|
||||
|
||||
![]() персональное сообщение посмотри
|
#5
|
|||
|
|||
![]() Спасибо большое, pesi! Думаю ей пойдёт на зачёт
![]() |
#6
|
||||
|
||||
![]() Помоему, подобная тема является нарушением правил, также как и темы вида:
Цитата:
Нужно не в личку кидать. |
#7
|
|||
|
|||
![]() Погоди хоть сдадим задачку преподавателю, а то подумает что списали
![]() И надо бы разрешения автора на выкладывание его кода спросить? |