Розв’язок задачі з Абрамова №494
Бер 04

Всі умови | Умова: Дано символьні файли f і g. Визначити, чи збігаються компоненти файлу f з компонентами файлу g. Якщо ні, то отримати номер перший компоненти, в якій файли f і g відрізняються між собою. У разі, коли один з файлів має n компонент (n ≥ 0) і повторює початок іншого (більш довгого) файлу, відповіддю має бути число n +1. (С.А. Абрамов, Г.Г. Гнездилова,Е.Н. Капустина, М.И. Селюн. Задачи по программированию. - Вологда, 2000. - №494)
Розв'язок на Pascal
program pr494; var f, g: file of char; putin_baran, putin_kozel, putin_hui : char; n : integer; same : boolean; begin writeln('Create File "f"'); assign(f, 'f.file'); rewrite(f); repeat write('Enter Char: '); readln(putin_hui); write(f, putin_hui); until putin_hui = 'y'; close(f); writeln('Create File "g"'); assign(g, 'g.file'); rewrite(g); repeat write('Enter Char: '); readln(putin_hui); write(g, putin_hui); until putin_hui = 'y'; close(g); //find result reset(f); reset(g); n := 0; same := true; while(not eof(f) and not eof(g)) do begin n := n + 1; read(f, putin_baran); read(g, putin_kozel); if (putin_baran <> putin_kozel) then begin same := false; break; end; end; if (same and (not eof(f) or not eof(g))) then begin same := false; n := n + 1; end; if (same) then writeln('Result: Files are the same') else writeln('Result: Fileas are not the same: ', n); writeln('---------------------------------'); writeln('Po4imu 9 dumaiu 4to Putin plohoi? 4to on tvorit v Krumy? Putin von iz Urkainu! Ludi ne hot9t tvoih mirhyh bomb!!!!!'); readln; end.