Здравствуйте, гость ( Вход | Регистрация )
| Adelya |
22.6.2010, 11:44
Сообщение
#1
|
|
Школьник ![]() Группа: Продвинутые Сообщений: 13 Регистрация: 22.6.2010 Город: Уфа |
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. Разве нет??? Посмотрите пожалуйста. Заранее спасибо)) |
![]() ![]() |
| граф Монте-Кристо |
22.6.2010, 16:00
Сообщение
#2
|
|
Доцент ![]() ![]() ![]() ![]() ![]() ![]() Группа: Преподаватели Сообщений: 3 840 Регистрация: 27.9.2007 Из: Старый Оскол Город: Москва Учебное заведение: МФТИ/МАИ Вы: другое |
Да, но ведь b не присваивается значение true. В цикле while проверяется условие. Если оно равно true, тогда цикл повторяется, нет - прекращается.
|
Adelya Циклы 22.6.2010, 11:44
граф Монте-Кристо Почему? Условие же not b, a не b! Цикл выполня... 22.6.2010, 12:05
Adelya
Почему? Условие же not b, a не b! Цикл выполн... 22.6.2010, 15:49
Adelya Спасибо))) Поняла теперь! 22.6.2010, 16:07![]() ![]() |
|
Текстовая версия | Сейчас: 19.4.2026, 22:54 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru