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

Решение задания 195: Программирование подсчета чисел по блок-схеме (Информатика 8 класс, Босова)


Задание 195. Запишите на языке Паскаль фрагмент программы, соответствующий блок-схеме. Определите значение переменной к после выполнения при следующих значениях переменной х: 1, 5, -10, 3, -8, 6, 1, 2, -7, 4, 0.


var k, x: integer;
begin
  k := 0;
  repeat
    read(x);
    if x > 1 then k := k + 1;
  until x <> 0;  // Эквивалентно until not (x = 0)
  writeln(k);
end.
  • k инициализируется в 0.
  • Цикл repeat-until читает x и проверяет, если x > 1, то увеличивает k на 1.
  • Цикл повторяется, пока x <> 0 (выход при x = 0).
  • В конце выводится k.

Анализ выполнения для данной последовательности x: 1, 5, -10, 3, -8, 6, 1, 2, -7, 4, 0

Последовательность обрабатывается по одному x за шаг. k увеличивается только если x > 1. Цикл выходит на x = 0.

Таблица состояний (k; x; x>1 (Да/Нет); x=0 (Да/Нет)):

Шаг k x x>1 (Да/Нет) x=0 (Да/Нет) Действие
Начало 0 - - - Инициализация
1 0 1 Нет Нет x <= 1, k не меняется; повтор
2 0 + 1 = 1 5 Да Нет x > 1, k увеличивается; повтор
3 1 -10 Нет Нет x <= 1, k не меняется; повтор
4 1 + 1 = 2 3 Да Нет x > 1, k увеличивается; повтор
5 2 -8 Нет Нет x <= 1, k не меняется; повтор
6 2 + 1 = 3 6 Да Нет x > 1, k увеличивается; повтор
7 3 1 Нет Нет x <= 1, k не меняется; повтор
8 3 + 1 = 4 2 Да Нет x > 1, k увеличивается; повтор
9 4 -7 Нет Нет x <= 1, k не меняется; повтор
10 4 + 1 = 5 4 Да Нет x > 1, k увеличивается; повтор
11 5 0 Нет Да x = 0, выход из цикла
  • k увеличивается для x > 1: 5, 3, 6, 2, 4 (5 значений).
  • На x = 0 цикл завершается.

Итоговое значение k

После выполнения программы будет выведено 5.

Поделиться