Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.07;
Скачать: CL | DM;

Вниз

вложенные циклы   Найти похожие ветки 

 
Dan   (2003-06-25 06:21) [0]

Здраствуйте мастера.
Текст программы на Паскале хранится в файле на диске, необходимо
определить максимальную степень вложенности циклов в программе?

Help please.


 
MBo ©   (2003-06-25 06:27) [1]

простенький синтаксический анализатор - встретил начало цикла (for, while, repeat) - увеличил счетчик на 1. конец - уменьшил.


 
Dan   (2003-06-25 06:47) [2]

не понял а зачем в конце уменьшать? и что уменьшать счетчик?

например
while eof(f) do
while eoln(f) do
begin
...
end;
for i=1 to n do ...;

макс. сттеп. влож=1

здесь цикл может быть одной строкой и может быть с begin и end.
и как узнать что цикл вложенный?


 
MBo ©   (2003-06-25 06:52) [3]

while eof(f) do Inc(Cnt) Cnt=1 MaxCnt=1
while eoln(f) do Inc(Cnt) Cnt=2 MaxCnt=2
begin
...
end; Dec(cnt) Cnt=1 MaxCnt=2// конец 2-го while
Dec(Cnt) Cnt=0 MaxCnt=1 // и первого тоже
for i=1 to n do ...; Inc(Cnt) Cnt=1 MaxCnt=2
Вус(Cnt) Cnt=0 MaxCnt=2




 
jack128 ©   (2003-06-25 06:52) [4]

1) если после do идет while - то цикд вложеный
2) если после do идет begin и до соответствующего end"a встретился while - цикл вложенный


 
MBo ©   (2003-06-25 07:02) [5]

Dec(Cnt) Cnt=0 MaxCnt=1 // и первого тоже
описка - MaxCnt=2



Страницы: 1 вся ветка

Текущий архив: 2003.07.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
1-20090
alex_bredin
2003-06-24 12:08
2003.07.07
ShellTreeView


3-19987
Parusstepu
2003-06-13 10:05
2003.07.07
Запрос на добавление записей


14-20212
muzik
2003-06-17 16:53
2003.07.07
---|Ветка была без названия|---


14-20278
alxx
2003-06-18 15:25
2003.07.07
Как врубить двустороннюю печать у драйвера принтера?


8-20167
altarasjuk
2003-03-21 21:15
2003.07.07
Canvas dose not allow drawing.