Добрый денек! Помогите , пожалуйста! Растолкуйте, как это решается.. Даю 35

Добросердечный денек! Помогите , пожалуйста! Объясните, как это решается.. Даю 35 баллов)) (Заблаговременно спасибо))


Обусловьте, какое значение будет выведено на экран в итоге исполнения приведенной ниже последовательности операторов:
a:=1; b:=1;
while agt;=b do b:=b+a; a:=a+1;
write(b*a)

Задать свой вопрос
1 ответ

Ответ:

4

Разъясненье:

По шагам.

Задаем значение a=1;

Задаем значение  b=1

Начало цикла

проверяем : agt;=b (1 больше либо равно 1) да,  выполняем тело цикла b:=b+a (задаем значение b равное 1+1=2)

возвращаемся к проверке, но теперь у нас a=1, b=2

проверяем: agt;=b (1 больше либо одинаково 2) нет,  не исполняем тело цикла

цикл завершен,

тот факт что операторы b:=b+a; a:=a+1; написаны на одной строке, ничего не означает, так цикл исполняет либо один оператор или все операторы, если они сгруппированы операторными скобками, в pascal это begin ... end.

исполняем

a:=a+1 (a=1+1=2)

выводим на экран результат, предварительно умножив a на b (2*2=4)

на экран будет выведено число 4.

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт