Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.12.2010, 23:01   #1
Karlsson)))
 
Регистрация: 18.12.2010
Сообщений: 3
Вопрос записи на паскале

помогите пожалуйста разобраться с кодом задачи. Дан файл, содержаший данные о продаже автомобиля.Каждая запись содерзжит марку авто,дату продажи и кол- во продаж.Определить марку наиболее продаваемой машины, дату наибольшей продажи машин. Код есть, работает,но необходимо, чтобы рез-т выводился в типизированный файл.
program lab2;
uses crt;
type
rec=record
date:string[8];
destmarka:string[20];
ticketQ:byte;
end;
var
i,j,n,MaxN,MN:byte;
Rcrds:array[1..255] of Rec;
MaxV:string;
Max,MaxQ:word;
begin
clrscr;
write('vvedite 4islo zapisej:');
readln(n);
writeln;
for i:= 1 to n do
begin
write('vvedite ',i,'-ju datu:');
readln(rcrds[i].date);
write('vvedite ',i,'-ju marku:');
readln(rcrds[i].destmarka);
write('vvedite ',i,'-oe 4islo proga}I{:');
readln(rcrds[i].ticketQ);
end;
clrscr;
writeln('__________________________ ___________________');
writeln('I data I marka I kol-vo proga}I{ I');
writeln('I______I__________________ I_________________I');
for i:=1 to n do
writeln('I',Rcrds[i].date:8,'I',Rcrds[i].destmarka:20,'I',Rcrds[i].ticketQ:14,'I');
writeln('I______I__________________ I_________________I');
Max:=0;
MN:=0;
for i:=1 to n do
begin
MaxV:=Rcrds[i].date;
MaxQ:=Rcrds[i].ticketQ;
MaxN:=i;
for j:=i+1 to n do
if (Rcrds[j].date=MaxV) then
MaxQ:=MaxQ+Rcrds[j].ticketQ;
if(MaxQ>Max) then
begin
Max:=MaxQ;
MN:=MaxN;
end;
end;
writeln('naibolIIIee 4islo proda}I{(',Max,') prodano na ', Rcrds[MN].date,',');
Max:=0;
MN:=0;
for i:=1 to n do
begin
MaxV:=Rcrds[i].destmarka;
MaxQ:=Rcrds[i].ticketQ;
MaxN:=i;
for j:=i+1 to n do
if (Rcrds[j].destmarka=MaxV) then
MaxQ:=MaxQ+Rcrds[j].ticketQ;
if (MaxQ>Max) then
begin
Max:=MaxQ;
MN:=MaxN;
end;
end;
writeln('naiboliiiee 4islo marok (',Max,') ', Rcrds[MN].destmarka,',');
readkey;
end.
Karlsson))) вне форума Ответить с цитированием
Старый 18.12.2010, 23:04   #2
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Объяви еще одну запись для результата и запиши туда. По аналогии
psycho-coder вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Записи в паскале кусака Помощь студентам 1 19.09.2010 17:25
записи в паскале swedalena Помощь студентам 9 25.05.2010 20:36
Записи в паскале TreiN-san Помощь студентам 4 06.01.2010 21:22
ЗАПИСИ на паскале Fornarina Помощь студентам 6 16.02.2009 19:17