т.е. Соunter каждый раз сбрасывается при выходе из цикла? все, теперь понял. спасибо.
Вид для печати
Смотри, как работает for:
1 перед первым выполнение цикла переменной Соunter присваивается значение 1
2 выполняется первый раз тело цикла до END_FOR
3 переменной Соunter присваивается значение +1(2)
4 выполняется второй раз тело цикла до END_FOR
5 переменной Соunter присваивается значение +1(3)
6 выполняется третий раз тело цикла до END_FOR
7 переменной Соunter присваивается значение +1(4)
8 выполняется четвертый раз тело цикла до END_FOR
9 переменной Соunter присваивается значение +1(5)
10 выполняется пятый раз тело цикла до END_FOR
11 переменной Соunter присваивается значение +1(6)
12 поскольку Соunter больше 5 дальнейшая часть программы выполняется после END_FOR
«Раскроем скобки»:
Код:(* Такт 0 *)
FOR Counter := 1 TO 5 DO
Var1 := Var1 + 1;
END_FOR;
(* Var1 = 5 *)
(* Такт 1 *)
FOR Counter := 1 TO 5 DO
Var1 := Var1 + 1;
END_FOR;
(* Var1 = 10 *)
(* Такт 2 *)
FOR Counter := 1 TO 5 DO
Var1 := Var1 + 1;
END_FOR;
(* Var1 = 15 *)
(* Такт 3 *)
FOR Counter := 1 TO 5 DO
Var1 := Var1 + 1;
END_FOR;
(* Var1 = 20 *)
(* Такт 4 *)
FOR Counter := 1 TO 5 DO
Var1 := Var1 + 1;
END_FOR;
(* Var1 = 25 *)
(* Такт 5 *)
FOR Counter := 1 TO 5 DO
Var1 := Var1 + 1;
END_FOR;
(* Var1 = 30 *)
(...)
(* Такт 412380 *)
FOR Counter := 1 TO 5 DO
Var1 := Var1 + 1;
END_FOR;
(* Var1 = 2061905 *)
(* Такт 412381 *)
FOR Counter := 1 TO 5 DO
Var1 := Var1 + 1;
END_FOR;
(* Var1 = 2061910 *)
(...)
Все бесконечно зациклились :D :D :D на этой теме.Если долго обьяснять ,то и самому запутаться можно :D :D :D :D
а мне кажется что Kiselev просто прикалывается над учителями.