Как только встречается слово Compiling, нужно передать в основную программу переменную Nstr - Free Pascal
Формулировка задачи:
Добрый день!
Помогите пожалуйста с программой. Есть функция, которая считывает из файла строки. Как только встречается слово Compiling, нужно передать в основную программу переменную Nstr. Подскажите, пожалуйста, как это сделать
Procedure Search(var str0:string; Nstr:integer); var f:text; prov, str:string; j:integer; begin assign(f,str0); reset(f); while not Eof(f) do begin readln(f,str); Nstr:=Nstr+1; prov:=''; for j:=1 to length(str) do begin prov:=prov+str[j]; if prov='Compiling' then ?????? <-----что делать здесь? end; end; end;
Решение задачи: «Как только встречается слово Compiling, нужно передать в основную программу переменную Nstr»
textual
Листинг программы
Procedure Search(var str0:string; var Nstr:integer); var f:text; prov, str:string; j:integer; begin assign(f,str0); reset(f); while not Eof(f) do begin readln(f,str); Nstr:=Nstr+1; prov:=''; for j:=1 to length(str) do begin prov:=prov+str[j]; if prov='Compiling' then Exit; end; end; end; Procedure Output(var str0:string); var f:text; x,y,Nstr,i,j:integer; str,str1,str2:string; flag1,flag2:boolean; begin initgraph(x, y,' '); assign(f,str0); reset(f); Nstr:=1; Search(str0, Nstr); j:=0; while not Eof(f) do begin j:=j+1; if j>=Nstr then begin readln(f,str); flag1:=false; flag2:=false; for i:=1 to length(str) do begin if str[i]='(' then flag1:=true; if (str[i+1]=')') or (str[i+1]=',') then flag2:=true; if flag2=true then begin str1:=str1 + ' '; if str[i]='"' then str2:=str2+str[i+1]; flag1:=false; flag2:=false; end; if flag1=true then str1:=str1 + str[i+1]; end; end; end; end;
Объяснение кода листинга программы
- Объявлены две процедуры: Search и Output.
- В процедуре Search используется переменная Nstr для подсчета количества строк в файле.
- В цикле while считывается каждая строка из файла до тех пор, пока не достигнется конец файла.
- Для каждой строки выполняется поиск слова
Compiling
. Если это слово найдено, то процедура завершается. - В процедуре Output используется переменная Nstr, которая инициализируется значением 1.
- Вызывается процедура Search для поиска строки с словом
Compiling
. - Если в строке найдено слово
(
и закрывающая скобка ')', то начинается поиск следующего слова. - Если в строке найдено слово
,
, то предыдущее найденное слово считается именем и добавляется в результат. - Если в строке найдено слово ```, то следующее слово считается продолжением предыдущего имени и добавляется в результат.
- Результат выводится на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д