Нужно написать программу процедура сравнения типизированного файла(имя: f1.dat) и целочисленного массива.структура файла: х-целое у-вещественное. сравнение осуществляется поэлементно(1-ый элемент массива сравнивается со значением х 1-ой записи все значения совпали,то процедура возвращает строку true иначе false.

applevip applevip    2   16.09.2019 12:40    7

Ответы
TRINDES2017 TRINDES2017  07.10.2020 19:42
// PascalABC.NET 3.3, сборка 1625 от 17.01.2018
// Внимание! Если программа не работает, обновите версию!

type
  tt=record
    x:integer;
    y:real
  end;

procedure Compare(f:file of tt; a:array of integer; var r:string);
begin
  r:='true';
  if f.FileSize<>a.Length then begin
    Writeln('Размер массива не соответствует количеству записей файла');
    r:='false';
    exit
    end;
  f.Seek(0);
  var t:tt;
  for var i:=0 to a.Length-1 do begin
    Read(f,t);
    if t.x<>a[i] then begin
      r:='false';
      exit
      end
    end
end;

begin
  var f:file of tt;
  var n:=ReadInteger('n=');
  Writeln('Введите ',n,' значений для сравнения');
  var a:=ReadArrInteger(n);
  var good:='';
  Assign(f,'f1.dat'); Reset(f);
  Compare(f,a,good);
  Writeln(good);
  f.Close
end.

Внимание! Поскольку входной файл не был представлен, программа не тестировалась! Проверена лишь компиляция программы.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика