![]()  | 
	
 
  | 
		
			
  | 	
	
	
		
		|||||||
| Регистрация | << Правила форума >> | 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  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Погоди хоть сдадим задачку преподавателю, а то подумает что списали  
		
	
		
		
		
		
		
	
		
		
	
	
	![]() И надо бы разрешения автора на выкладывание его кода спросить?  |