Урок 19 Задача 4
Primary tabs
Дан текстовый файл, в котором с в ASCII-стиле нарисованы цепочки из цифр, которые связаны по горизонтали и вертикали.
Все цепочки составляют одно дерево, которое устроено так:всегда есть общий корень и это цифра
по горизонтали цепочка не разрывается пробелами, соединяется же с помощью последовательностей знака - (тире).
по вертикали цепочка не разрывается переносом строк, соединяется же с помощью вертикальных последовательностей символа | (вертикального разделителя).Размер схемы не более чем 100 на 100 символов.
var
f1:text;
filename, s, s1: string;
a: integer;
q: boolean;
function prov (s1, s: string; a: integer): integer;
var
i, b: integer;
f: boolean;
begin
b:=0;
f:= false;
for i:=1 to length(s) do
begin
if (s1[i]>='0')and(s1[i]<='9') and (not f)
or (s[i]>='0')and(s[i]<='9') and f then
b:= b+1;
if (s[i]='|') and (s[i+1]='-') then // если встречается "|-"
f:= true;
end;
if b > a then
a:= b;
result:= a;
end;
begin
filename := 'C:\Users\user\AppData\Local\Temp\input.txt'; // путь к файлу
assign(f1, filename);
reset(f1);
q:= true;
a:= 0;
while not eof(f1) do
begin
readln(f1, s);
if q then
begin
s1:= s;
q:= false;
end;
writeln(s);
a:= prov (s1, s, a);
end;
writeln;
writeln('Ответ: ', a);
readln();
end.- Log in to post comments
- 506 reads
vedro-compota
Sun, 01/08/2023 - 14:10
Permalink
засчитано
засчитано
_____________
матфак вгу и остальная классика =)