Даны три упорядоченные по возрастанию файла целых чисел. Найти наименьшее из чисел, встречающееся во всех трех файлах. Файлы должны быть прочитаны не более одного раза
Категория: Delphi/Pascal
2012-02-04 18:11:00
code: #pascal
Program superdeni; var {описание переменных} f1,f2,f3:text; {для файлов} c:integer; {для чисел из файлов} i,n:integer; {для массива} min:integer; {для минимального числа} v:array [1..100] of integer; {в этот массив запишем все числа из всех 3-х файлов} begin {начало программы} assign (f1,'1.txt' ); reset (f1); {открываем 1 файл для чтения} assign (f2,'2.txt' ); reset (f2); {открываем 2 файл для чтения} assign (f3,'3.txt' ); reset (f3); {открываем 3 файл для чтения} i:=0; {обнуляем позицию записи переменной в массив} while not eof(f1) do begin {начало чтения 1 файла} readln(f1,c); {читаем текущее число из файла 1} inc(i); {увеличиваем на +1 переменую для ячейки массива} v[i]:=c; {записываем эту переменную в массив} end; {конец чтения 1 файла} while not eof(f2) do begin {начало чтения 2 файла} readln(f2,c); {читаем текущее число из файла 2} inc(i); {увеличиваем на +1 переменую для ячейки массива} v[i]:=c; {записываем эту переменную в массив} end; {конец чтения 2 файла} while not eof(f3) do begin {начало чтения 3 файла} readln(f3,c); {читаем текущее число из файла 3} inc(i); {увеличиваем на +1 переменую для ячейки массива} v[i]:=c; {записываем эту переменную в массив} end; {конец чтения 3 файла} n:=i; {открываем 1 файл для чтения} min:=v[1]; {минимальный ставим на 1 элемент массива} for i:=2 to n do {начиная со 2 элемента массива} if v[i]<min then min:=v[i];{ - ищем самый минимальный =))} writeln('MIN= ',min); {минимальный как результат выводим на экран} close(f1); close(f2); close(f3); {закрываем ВСЕ 3 файла} readln; end.
Поделиться: