Эффект массы
Новые
- Регистрация
- 31 Май 2014
- Сообщения
- 16
- Реакции
- 0
- Баллы
- 0
Сортировка записей. Паскаль
Задача на файлы. Нужно найти максимальный и минимальный элемент в "Экономические показатели" и отсортировать его по возрастанию. Не могу исправить ошибки в программе.
И конечно же паскаль ABC)
Задача на файлы. Нужно найти максимальный и минимальный элемент в "Экономические показатели" и отсортировать его по возрастанию. Не могу исправить ошибки в программе.
Код:
program pro1;
uses
op, obrabotki;
var
sv: sved;
begin
assign(sv, 'lep_zar.dat');
vvod(sv,sd);
vivod(sv);
sort(sv);
end.
Код:
unit obrabotki;
interface
uses op;
procedure vvod(var sv:sved);
procedure vivod(var sv:sved);
procedure sort(var sv:sved);
implementation
procedure vvod(var sv:sved);
var
i, n: integer;
begin
assign(sv,'lep_zar.dat');
rewrite(sv);
writeln('Введите количество регионов:');
readln(n);
for i := 1 to n do
begin
writeln(i, '-: ');
with sd do begin
write('Название региона: ');
readln(name);
write('Экономические показатели: ');
readln(pocaz);
write(sv, sd);
end;
end;
close(sv);
end;
procedure vivod(var sv:sved);
var
i,n: integer;
begin
assign(sv,'lep_zar.dat');
reset(sv);
writeln('-----------------------------');
writeln('Регион ': 10, 'Экономические показатели по промышленному производству': 10);
writeln('-----------------------------');
while not eof(sv) do
begin
read(sv,sd);
with sd do begin
writeln(sd.name: 10, sd.pocaz: 3);
end;
end;
writeln('--------------------------------');
close(sv);
end;
procedure sort(var sv:sved);
var
i,j:integer;
temp:region;
begin
assign(sv,'lep_zar.dat');
reset(sv);
while not eof (sv) do
begin
read(sv,sd);
begin
for j:=1 to maxk do
for i:=1 to maxk -1 do
if (sd[i].pocaz > sd[i+1].pocaz) then
temp:=sd[i];
sd[i]:=sd[i+1];
sd[i+1]:=temp;
end;
end;
WriteLn(' Average date: ',sd[i]);
close(sv);
end;
end;
end;
end.
Код:
unit op;
interface
const maxk = 10;
type
region = record
name: string[20];
pocaz: string[5];
end;
type
sved = file of region;
sdd = array[1..maxk] of region;
var
sd:sdd;
implementation
end.