Задача 3 Урок 20
Primary tabs
Имеется текстовый файл в котором содержится не более 30 строк, в каждой строке не более 30 символов (пробелы тоже считаются символами). Цифры и другие символы перемешаны в каждой строке.
Задание: найдите максимальное число, c учетом того, что числом считаются подряд идущие цифры не только по горизонтали, но и по вертикали.
type sarr=array [1..10] of string;
var f:text; name:string; i,j,q,k,t,l,h,n,max:integer;
a:array [1..15] of integer; gor:array [1..15] of string; s:sarr;
begin
name:='C:\Users\test\Desktop\TraliVali\file.txt';
assign(f,name);
reset(f);
h:=0;
while not eof(f) do
begin
h+=1;
readln(f, s[h]);
end;
for i:=1 to h do
begin
for j:=1 to length(s[i]) do
begin
if (s[i][j]>='0') and (s[i][j]<='9') then
begin
k+=1;
if (k=1) or (t>k) then
begin
t:=0;
q+=1;
end;
gor[q]+=s[i][j];
end;
t+=1;
end;
k:=0;
end;
i:=1;
for j:=1 to length(s[i]) do
begin
for i:=1 to h do
begin
if (s[i][j]>='0') and (s[i][j]<='9') then
begin
k+=1;
if (k=1) or (t>k) then
begin
t:=0;
q+=1;
end;
gor[q]+=s[i][j];
end;
t+=1;
end;
k:=0;
end;
for i:=1 to q do
val(gor[i],a[i],l);
a[1]:=max;
for i:=2 to q do
if a[i]>max then
max:=a[i];
writeln(max);
readln();
end. - Log in to post comments
- 556 reads