___файлы и записи, москва

  • Автор темы fotomodel
  • Дата начала
F

fotomodel

#1
Помогите, пожалуйста, исправить ошибки в 1. части и сделать 2.ую


1.__Задать посредством ввода с клавиатуры массив, максимально состоящий из 10
элементов, компонентами которого являются записи вида: порядковый номер, имя и фамилия абонента, номер телефона, остаток на счете. Посредством функции переписать в новый массив список абонентов, у которых остаток на счете не превышает установленной пользователем с клавиатуры суммы. Вывести результат на экран.

2.__Составить функцию записи результатов в файл. Для контроля достоверности записи найденных результатов, реализовать функцию чтения записанных данных и
вывода их на экран.







моя 1.ая часть:

Код:
program RK;

{$APPTYPE CONSOLE}
uses
SysUtils;
type abon=record
i,k:integer;
fam,name:string[15];
ost,tell:integer;
end;
function sort(fam,name:string;mas,mas2:array of abon):string;
var n,i,k,z,tell,summ:integer;
begin
z:=1;k:=0;
for i:=1 to n do begin
if mas[i].ost>=summ then begin
mas2[z]:=mas[i];
z:=z+1;inc(k);
end;
end;
end;
var

n,i,k,z,tell,summ:integer;
fam,name:string;mas,mas2:array of abon;
begin
{ TODO -oUser -cConsole Main : Insert code here }
write('Vvedite kolichestvo abonentov: ');
readln(n);
for i:=1 to n do begin
writeln('abonent ',i);
writeln('familia '); readln(mas[i].fam);
writeln('imya '); readln(mas[i].name);
writeln('telephon ');readln(mas[i].tell);
writeln('ostatok na schete ');readln(mas[i].ost);
end;
writeln('vvedite summu');
readln(summ);
sort(fam,name,mas,mas2);
writeln('vivod poluchennogo rezultata');
for z:=1 to k do begin
writeln('familiya: ',mas[z].fam,' ', 'imya: ',mas[z].name);
writeln('nomer: ',mas[z].tell);
writeln('ost: ',mas[z].ost);
end;
readln;
end.