Планирование уроков на учебный год (ФГОС)



Урок 11
§7(4). Функциональный подход к анализу программ




Содержание урока:

Функциональный подход к анализу программ
Трассировка алгоритма
7.4. Другие приёмы анализа программ. Пример 7
7.4. Другие приёмы анализа программ. Пример 8
САМОЕ ГЛАВНОЕ. Вопросы и задания
Материалы к уроку


liniya

7.4. Другие приёмы анализа программ. Пример 7


Трассировочная таблица — наглядный, но не универсальный инструмент анализа программ. Например, её затруднительно строить, если в алгоритме много шагов.

Пример 7. Требуется выяснить, какое число будет напечатано в результате выполнения следующей программы:

Трассировочная таблица для этой программы будет содержать не одну сотню строк. Попробуем проанализировать программу иначе.

1. Выясним, какую функцию выполняет каждая из переменных, задействованных в программе. Начальное значение переменной s = 400. При каждом выполнении тела цикла к значению s прибавляется число 12. Начальное значение переменной n = 0. При каждом выполнении тела цикла значение переменной увеличивается на 2: n — 2, если тело цикла выполнено 1 раз; n = 4 — если 2 раза; n = 6 — если 3 раза и т. д. Таким образом, искомое значение n — это 2 • k, где k — число выполнений тела цикла.

2. Выясним, при каком условии произойдёт выход из цикла. Цикл выполняется, пока s < 2992. Следовательно, цикл завершится при достижении s значения, равного или большего 2992.

3. Выясним, сколько раз выполнится тело цикла, вычислив значение выражения: (2992 - 400)/12 = 216. После того как тело цикла выполнится 216 раз, значение переменной s будет равно 2992, что является условием выхода из цикла. При этом n = 2 • 216 = 432.

Выясните, каким будет результат работы программы, если в ней условие выхода из цикла будет изменено на:

1) s < 2990;

2) s <= 2992;

3) s <= 300.

Cкачать материалы урока





Наверх