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