Необходимо написать программку в Pascal.Необходимо будет считать информацию с 2-ух файлов

Необходимо написать программку в Pascal.
Необходимо будет считать информацию с 2-ух файлов и соединить их в один файл. В первом файле есть 3 столбца:
1. Четырехзначный номер
2. Рост
3. Вес
Во втором файле также 3 столбца:
1. Четырехзначный номер
2. Время бега на 1 км
3. Колличество подтягиваний
Необходимо написать программку которая будет считывать данные с 2-ух файлов и будет творить 3ий файл, в котором программа объединит все данные в согласовании с номером.
PascalABC.NET 3.1

Задать свой вопрос
Никита Мальцевский
2-ой вариант мне больше понятен.
Тамара Таконаева
сущность в том, что большинсвто команд мы не выучили
Данил Шканников
с этим я соглашусь
Starunov Egor
указал)
Лилия Картышко
а как считать данные первого столбца ?
1 ответ
Главно! Прикрепленные файлы на самом деле не текстовые, а двоичные, но таковые данная система не дозволяет прикрепить. Потому не стоит пробовать эти файлы читать.

Для работы программки следует переименовать файлы в file1.bin и file2.bin

Содержимое файла f1
7696 163 67
9195 183 71
1922 174 77
4586 173 68
4611 164 64
4204 164 60
8914 178 62
1102 162 63
4947 184 63
6185 174 79

Содержимое файла f2
4611 287 4
1102 312 3
9195 220 12
3142 251 7
8914 229 9
7696 252 7
1922 245 5
4204 273 6
4586 241 10

// PascalABC.NET 3.3, сборка 1573 от 04.11.2017
// Внимание! Если программка не работает, обновите версию!

type
  st1=record
    номер:integer;
    рост:integer;
    вес:integer
  end;
  st2=record
    номер:integer;
    время_бега:integer;
    кол_подтягиваний:integer
  end;
  st3=record
    номер:integer;
    рост:integer;
    вес:integer;
    время_бега:integer;
    кол_подтягиваний:integer
  end;

begin
  // считываем файл f1 в массив типа st1
  var f1:file of st1;
  Assign(f1,'file1.bin'); Reset(f1);
  var n1:=FileSize(f1);
  var m1:=new st1[n1];
  for var i:=0 to n1-1 do Read(f1,m1[i]);
  f1.Close;
  // читаем файл f2 и для каждой записи ищем элемент массива
  // с таким же номером. Если найден - делаем слияние в файл f3
  var f2:file of st2;
  Assign(f2,'file2.bin'); Reset(f2);
  var buf2:st2; // буфер для чтения f2
  var f3:file of st3;
  Assign(f3,'file3.bin'); Rewrite(f3);
  var buf3:st3; // буфер для записи f3
  while not Eof(f2) do begin
    Read(f2,buf2);
    var j:=m1.FindIndex(t-gt;t.номер=buf2.номер);
    if jlt;gt;-1 then begin
      buf3.номер:=buf2.номер;
      buf3.рост:=m1[j].рост;
      buf3.вес:=m1[j].вес;
      buf3.время_бега:=buf2.время_бега;
      buf3.кол_подтягиваний:=buf2.кол_подтягиваний;
      Write(f3,buf3)
      end
    end;
  f2.Close;
  // посмотрим, что вышло в f3
  Seek(f3,0);
  while not Eof(f3) do begin
    Read(f3,buf3); Print(buf3)
    end;
  f3.Close
end.

Пример работы программки
(4611,164,64,287,4) (1102,162,63,312,3) (9195,183,71,220,12) (8914,178,62,229,9) (7696,163,67,252,7) (1922,174,77,245,5) (4204,164,60,273,6) (4586,173,68,241,10)
Dima Batjuk
а для чего переименовывать файлы в бин
, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы
Анна хорошо учится у неё много подруг свободное от учёбы время

Обществознание.

10) Килограмм конфет дороже килограмма печенья на 52 р. За 8

Математика.

Во сколько раз число атомов кислорода в земной коре больше числа

Химия.

Составить монолог от имени дневника двоечника 7-10 предложений

Русский язык.

Рассматривая литературный язык как сложное взаимодействие книжного языка и разговорного,В.И.Чернышёв горячо

Разные вопросы.

Арабы входят в __________________ групп народов. Местом расселения арабов с незапамятных

Разные вопросы.

Грузовой автомобиль марки краз за одну поездку может доставить 7.500 кирпичей

Математика.

Определить предложения какие они по цели высказывания и по интонации

Русский язык.

"Три толстяка" Называли эту площадь Площадью Звезды последующей причине.

Русский язык.

на одной грядке коротышки посадили 3 ряда морковок по 8 штук

Разные вопросы.

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт