Предмет: Информатика
ГДЗ Рабочая тетрадь Информатика 8 класс Босова

Решение задания 189: Трассировка программ с циклами while (Информатика 8 класс, Босова)


Задание 189. Определите значение переменной s и i после выполнения фрагмента программы.


а) Фрагмент программы:

s: = 0;
i := 0;
while i < 5 do
begin
  i:=i+1;
  s:=s+i;
end;

Цикл выполняется, пока i < 5. В теле цикла сначала увеличивается i на 1, затем s увеличивается на новое значение i.

Процесс выполнения по шагам:

Шаг s i i < 5 (Да/Нет) Действие
Инициализация 0 0 Да Начало цикла
1-я итерация 0 + 1 = 1 0 + 1 = 1 Да i увеличивается до 1, s = s + 1
2-я итерация 1 + 2 = 3 1 + 1 = 2 Да i увеличивается до 2, s = s + 2
3-я итерация 3 + 3 = 6 2 + 1 = 3 Да i увеличивается до 3, s = s + 3
4-я итерация 6 + 4 = 10 3 + 1 = 4 Да i увеличивается до 4, s = s + 4
5-я итерация 10 + 5 = 15 4 + 1 = 5 Нет i увеличивается до 5, s = s + 5; условие ложно, выход

б) Фрагмент программы:

s: = 0;
i := 0;
while i < 5 do i := i+1;
s:= s+i;

Цикл выполняется, пока i < 5. В теле цикла только увеличивается i на 1. После цикла s увеличивается на текущее значение i.

Процесс выполнения по шагам:

Шаг s i i < 5 (Да/Нет) Действие
Инициализация 0 0 Да Начало цикла
1-я итерация 0 0 + 1 = 1 Да i увеличивается до 1
2-я итерация 0 1 + 1 = 2 Да i увеличивается до 2
3-я итерация 0 2 + 1 = 3 Да i увеличивается до 3
4-я итерация 0 3 + 1 = 4 Да i увеличивается до 4
5-я итерация 0 4 + 1 = 5 Нет i увеличивается до 5; условие ложно, выход
После цикла 0 + 5 = 5 5 - s = s + i

в) Фрагмент программы:

s: = 0;
i := 2;
while i > 1 do
begin
  s := s+1/i;
  i := i-1;
end;

Цикл выполняется, пока i > 1. В теле цикла s увеличивается на 1 / i (деление вещественное), затем i уменьшается на 1. Предполагается, что s — вещественная переменная.

Процесс выполнения по шагам:

Шаг s i i > 1 (Да/Нет) Действие
Инициализация 0.0 2 Да Начало цикла
1-я итерация 0.0 + 1 / 2 = 0.5 2 - 1 = 1 Нет s увеличивается на 0.5, i уменьшается до 1; условие ложно, выход
Поделиться
Кликните на изображение чтобы обновить код, если он неразборчив