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



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






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

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


liniya

САМОЕ ГЛАВНОЕ


Компьютерную программу можно считать последовательностью строк символов некоторого алфавита. Современные системы программирования и языки допускают использование визуальных элементов (окон, иконок и др.) для построения программ, в частности для создания интерфейса пользователя. Тем не менее основная, алгоритмическая, часть любой программы строится с использованием символьных средств.

В основной школе вы познакомились со школьным алгоритмическим языком КуМир и языком программирования Pascal (Паскаль). В 11 классе мы продолжаем работать с языком Pascal.

Компьютер оперирует только одним видом данных — отдельными битами, или двоичными цифрами. Задачи, решаемые с помощью компьютера, оперируют данными, имеющими форму чисел, символов, текстов и более сложных структур. Алгоритмы для обработки этих данных создаются с учётом их структуры — множества элементов данных и множества связей между ними.

Различают простые и сложные структуры данных. Простые структуры данных не могут быть разделены на составные части больше, чем бит. К ним относятся числовые, символьные, логические и другие данные. Простые структуры данных служат основой для построения сложных структур данных — массивов, списков, графов, деревьев и др.

Для анализа свойств алгоритма и проверки его соответствия решаемой задаче используются трассировочные таблицы. В них фиксируется пошаговое исполнение алгоритма (программы), что позволяет наглядно представлять значения переменных, изменяющиеся при его выполнении. Используются трассировочные таблицы двух видов:

1) таблицы, каждая строка которых отражает результат одного действия;
2) таблицы, каждая строка которых отражает результат выполнения группы действий.

Вопросы и задания


1. Что такое язык программирования? Опишите состав и интерфейс среды разработки программ на используемом вами языке программирования.

2. Приведите примеры структур данных, используемых в языке программирования Pascal.

3. Кратко охарактеризуйте основные элементы языка программирования Pascal.

4. Опишите структуру программы на языке Pascal.

5. Для чего предназначены трассировочные таблицы?

6. Вещественные числа х, у, z являются исходными данными для следующего алгоритма:

1) переменной m присвоить значение х;
2) сравнить значения m и у: если у больше m, переменной m присвоить значение у;
3) сравнить значения m и z: если z больше m, переменной m присвоить значение z.

Выясните, какую задачу решает этот алгоритм. Запишите его на языке программирования Pascal. Решите аналогичную задачу для чисел х, у, z и w.

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

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

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

10. Получив на вход число х, приведённая ниже программа выводит два числа — m и n.

Известно, что при некотором значении х были выведены числа 4 и 8. Укажите наибольшее и наименьшее из таких чисел х. Сколько всего существует таких х?

11. Напишите программу, выводящую на экран все чётные трёхзначные числа.

12. Напишите программу, подсчитывающую сумму квадратов всех чисел от 1 до n.

13. Напишите программу, позволяющую определить, входит ли заданная цифра в некоторое целое неотрицательное число.

14. Разработайте программу перевода десятичного натурального числа n в троичную систему счисления.

15. Разработайте программу, которая выводит сообщение «Да», если точка с координатами (х, у) принадлежит закрашенной области, и «Нет» в противном случае.

16. Шифр кодового замка является двузначным числом. Буратино забыл код, но помнит, что сумма цифр этого числа, сложенная с их произведением, равна самому числу. Напишите все возможные варианты кода, чтобы Буратино смог быстрее открыть замок. Решите задачу методом перебора.

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





Наверх