Помощь - Поиск - Пользователи - Календарь
Полная версия: Циклы > Информатика / Программирование
Образовательный студенческий форум > Другие дисциплины > Информатика / Программирование
Adelya
const b:boolean=false;
a:integer=42;
begin
while not b do begin
b:=abs(a)<4;
a:=a div 5+2;
writeln('*');
end;
end.



Вопрос: сколько раз выполнится цикл?

Я ввела программу в паскаль, получилось, что 4 раза.
Я не понимаю, каким образом 4? Ведь цикл должен выполняться, когда b=true.
Разве нет???
Посмотрите пожалуйста.
Заранее спасибо))
граф Монте-Кристо
Почему? Условие же not b, a не b! Цикл выполняется, когда b = false, 4 раза и получается.
Adelya
Цитата(граф Монте-Кристо @ 22.6.2010, 12:05) *

Почему? Условие же not b, a не b! Цикл выполняется, когда b = false, 4 раза и получается.

Так ведь вначале задано, что B=false, а потом они говорят про not B,т.е. про B=true. Разве нет?
Объясните пожалуйста, что я не так поняла...
граф Монте-Кристо
Да, но ведь b не присваивается значение true. В цикле while проверяется условие. Если оно равно true, тогда цикл повторяется, нет - прекращается.
Adelya
Спасибо))) Поняла теперь!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.