Program asd; var f,g:text; t,fs,gs:string; i,k,n:integer; IsFilesEqual:boolean; begin IsFilesEqual:=true; assign(f,'fi1.txt'); assign(g,'fi2.txt'); reset(f); reset(g); n:=0; while not eof(f) do begin if not IsFilesEqual then break; readln(f,fs); readln(g,gs); if fs<>gs then begin IsFilesEqual:=false; inc(n); if length(fs)<Length(gs) then t:=fs else t:=gs; for i:=1 to length(t) do if fs[i]<>gs[i] then begin k:=i; break; end; end; end; close(f); close(g); if IsFilesEqual then writeln('Совпадают.') else writeln('Строка = ',n,' Позиция = ',k); readln; end.
4^750-4^10 = 4^750 - 4^11 + 4^11 - 4^10 = 4^750 - 4^11 + 3 * 4^10 = 4^750 - 4^12 + 4^12 - 4^11 + 3*4^10 = 4^750 - 4^12 + 3*4^11 + 3*4^10 = ... = 4^750 - 4^750 + 3*4^749 + 3*4^748+...+3*4^10 = 3*4^749 + 3*4^748+...+3*4^10.
Таким образом, исходное число представили в виде суммы степеней, умноженных на коэффициенты при них, что позволяет перевести число в 4-ичную систему счисления.
4^1550+4^750-4^10 = 4^1550 + 0*4^1549 + ... + 0 * 4^750 + 3*4^749 + 3*4^748+...+3*4^10 + 0*4^9 + ... + 0*4^0.
Осталось посчитать количество коэффициентов, равных 0.
(1549 - 750 + 1) + (9 - 0 + 1) = 810.
var f,g:text;
t,fs,gs:string;
i,k,n:integer;
IsFilesEqual:boolean;
begin
IsFilesEqual:=true;
assign(f,'fi1.txt');
assign(g,'fi2.txt');
reset(f);
reset(g);
n:=0;
while not eof(f) do
begin
if not IsFilesEqual then
break;
readln(f,fs);
readln(g,gs);
if fs<>gs then
begin
IsFilesEqual:=false;
inc(n);
if length(fs)<Length(gs) then
t:=fs
else
t:=gs;
for i:=1 to length(t) do
if fs[i]<>gs[i] then
begin
k:=i;
break;
end;
end;
end;
close(f);
close(g);
if IsFilesEqual then writeln('Совпадают.')
else
writeln('Строка = ',n,' Позиция = ',k);
readln;
end.