Анализ программ с помощью трассировочных таблиц 11 класс конспект урока босова

Обновлено: 03.07.2024

Презентация на тему: " 1 Правила заполнения трассировочной таблици. 2 1. Записать алгоритм в левой части. A:=2 B:=3 A:=A*A B:=3*B A:=B+10 B:=A-B." — Транскрипт:

1 1 Правила заполнения трассировочной таблицы

2 2 1. Записать алгоритм в левой части. A:=2 B:=3 A:=A*A B:=3*B A:=B+10 B:=A-B

3 3 2. Построить таблицу для трассировки. AB A:=2 B:=3 A:=A*A B:=3*B A:=B+10 B:=A-B Количество столбцов в таблице равно количеству переменных используемых в программе в данном примере переменных 2 A и B

4 4 3. Последовательно заполнить трассировочную таблицу. AB A:=2 B:=3 A:=A*A B:=3*B A:=B+10 B:=A-B В каждой строчке выполняется действие указанное в алгоритме. В данном алгоритме присваивание значения переменной.

5 5 3. Последовательно заполнить трассировочную таблицу. AB A:=22- B:=3 A:=A*A B:=3*B A:=B+10 B:=A-B В каждой строчке выполняется действие указанное в алгоритме. В данном алгоритме присваивание значения переменной.

6 6 3. Последовательно заполнить трассировочную таблицу. AB A:=22- B:=323 A:=A*A B:=3*B A:=B+10 B:=A-B В каждой строчке выполняется действие указанное в алгоритме. В данном алгоритме присваивание значения переменной.

7 7 3. Последовательно заполнить трассировочную таблицу. AB A:=22- B:=323 A:=A*A43 B:=3*B A:=B+10 B:=A-B В каждой строчке выполняется действие указанное в алгоритме. В данном алгоритме присваивание значения переменной.

8 8 3. Последовательно заполнить трассировочную таблицу. AB A:=22- B:=323 A:=A*A43 B:=3*B49 A:=B+10 B:=A-B В каждой строчке выполняется действие указанное в алгоритме. В данном алгоритме присваивание значения переменной.

9 9 3. Последовательно заполнить трассировочную таблицу. AB A:=22- B:=323 A:=A*A43 B:=3*B49 A:=B B:=A-B В каждой строчке выполняется действие указанное в алгоритме. В данном алгоритме присваивание значения переменной.

10 10 3. Последовательно заполнить трассировочную таблицу. AB A:=22- B:=323 A:=A*A43 B:=3*B49 A:=B B:=A-B1910 В каждой строчке выполняется действие указанное в алгоритме. В данном алгоритме присваивание значения переменной.

11 11 4. Результат выполнения данного алгоритма. AB A:=22- B:=323 A:=A*A43 B:=3*B49 A:=B B:=A-B1910 В результате выполнения данного алгоритма переменная A = 19, B = 10.

  • Для учеников 1-11 классов и дошкольников
  • Бесплатные сертификаты учителям и участникам

– ввести понятие таблицы данных и научить определять результат работы алгоритма, использующего одномерную таблицу данных .

Задачи урока :

Образовательные:

- рассмотреть примеры и получить опыт решения типовых задач по обработке массивов (суммирование, поиск, наименьшего/наибольшего значения, подсчет количества элементов с некоторым свойством);

- сформировать на примерах умение исполнять готовые и записывать на алгоритмическом языке простые циклические алгоритмы обработки одномерного массива чисел

Развивающие:

– развивать у учащихся умения сопоставлять, анализировать, выделять главное, существенное, обобщать, формулировать выводы;
– развивать у учащихся познавательный интерес и творческие способности.

Воспитательные:

– формировать коммуникативные компетенции учащихся через работу в группах, воспитания уважения друг к другу, умения слушать;
– воспитание информационной культуры.

Изучив тему урока, учащиеся должны:

– уметь определять результат работа алгоритма без проверки на компьютере.

Место урока в учебном плане: данный урок является первым при изучении темы “Одномерные массивы”.

Форма проведения урока: беседа, работа в группах, практическая работа на компьютере

Средства обучения :

технические:

– компьютер;
– мультимедийный проектор;
– экран;

программные:

– тест в системе MyTest ;

- презентация, созданная средствами программы Microsoft PowerPoint
– система программирования Кумир

Изучение нового материала.

Закрепление полученных знаний.

Подведение итогов урока.

I. Организационный момент.

В этом году вам сдавать ОГЭ по информатике. В КИМ есть задание 10, которое пока вам непонятно. Сегодня мы рассмотрим способы решения данного задания. Но сначала повторим основные операторы алгоритмического языка: присваивание и цикл с параметром.

II.Актуализация знаний

Выполнение теста в системе MyTest (примеры заданий)

1. Определите значение переменной b после выполнения алгоритма:

b := ( a / 3 ) * ( b + 2 )

В ответе укажите одно целое число — значение переменной b .

2. Запишите значение переменной s, полученное в результате работы следующей программы.

нц для k от 3 до 8

3. Запишите значение переменной s, полученное в результате работы следующей программы.

нц для i от 2 до 5

1. Определите значение переменной b после выполнения алгоритма:

2. Запишите значение переменной s, полученное в результате работы следующей программы.

нц для k от 6 до 12

3. Запишите значение переменной s, полученное в результате работы следующей программы.

нц для n от 2 до 5

III. Изучение нового материала.

Анализ работы алгоритма содержащего таблицу данных.

Задание 10 . В таблице Dat хранятся данные о численности учеников с 1 по 11 класс. Определите, какое число будет напечатано в результате работы программы.

Dat[1] := 20; Dat[2] := 25

Dat[3] := 19; Dat[4] := 25

Dat[5] := 26; Dat[6] := 22

Dat[7] := 24; Dat[8] := 28

Dat[9] := 26; Dat[10] := 21

нц для k от 1 до 11

если Dat[k] > 22 то

Какую задачу решает алгоритм? - Определяет количество элементов таблицы, значения которых больше 22.

Работа в группе 3-4 человека

Задача 1: В таблице Dat хранятся данные о количестве самолётов, отправляющихся из аэропорта города на юг в первой декаде августа. Что будет напечатано в результате выполнения следующего алгоритма.

Dat[1] := 2; Dat[2] := 2

Dat[3] := 3; Dat[4] := 3

Dat[5] := 2; Dat[6] := 2

Dat[7] := 5; Dat[8] := 5

Dat[9] := 6; Dat[10] := 6

нц для k от 2 до 10

Задача 2: В таблице Dat хранятся данные о количестве учеников в классах (Dat[1] — количество учеников в первом классе, Dat[2] — во втором и т. д.). Определите, какое число будет напечатано в результате работы следующей программы.

Dat[1] := 20; Dat[2] := 27

Dat[3] := 19; Dat[4] := 28

Dat[5] := 26; Dat[6] := 22

Dat[7] := 24; Dat[8] := 28

Dat[9] := 26; Dat[10] := 21

нц для к от 1 до 11

Задача: В таблице Dat хранятся данные о количестве сделанных учениками заданий. Что будет напечатано в результате выполнения следующего алгоритма.

Dat[1] := 7; Dat[2] := 9

Dat[3] := 10; Dat[4] := 5

Dat[5] := 6; Dat[6] := 7

Dat[7] := 9; Dat[8] := 10

Dat[9] := 6; Dat[10] := 9

нц для k от 1 до 10

если Dat[k] > m то

Задача 2: В таблице Dat хранятся данные о количестве учеников в классах (Dat[1] — количество учеников в первом классе, Dat[2] — во втором и т. д.). Определите, какое число будет напечатано в результате работы следующей программы.

Dat[1] := 16; Dat[2] := 20

Dat[3] := 20; Dat[4] := 35

Dat[5] := 14; Dat[6] := 21

Dat[7] := 28; Dat[8] := 12

Dat[9] := 15; Dat[10] := 35

нц для k от 1 до 10

Формулирование задач, которые решают данные алгоритмы. Обратить внимание, что при нахождении индекса максимального элемента, какой индекс будет выведен, если максимальных элементов несколько.

IV . Закрепление полученных знаний.

Задания для самостоятельной работы (возможно выполнение в парах)

Задание 1.

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

Проверьте свое решение на компьютере.

Сформулируйте условие задачи, которую решает этот алгоритм.

1. В таблице Dat хранятся данные ежедневных измерений количества осадков за неделю в миллиметрах.

цел­таб Dat[1:7]

цел k , day

Dat[1] := 14; Dat[2] := 10

Dat[3] := 0; Dat[4] := 15

Dat[5] := 0; Dat[6] := 15

Dat [7] := 10

нц для k от 1 до 7

если Dat[k] = 0 то

2. В таблице Dat хранятся данные измерений среднесуточной температуры за 10 дней в градусах.

целтаб Dat[1:10]

Dat[1] := 12; Dat[2] := 15

Dat[3] := 17; Dat[4] := 15

Dat[5] := 14; Dat[6] := 12

Dat[7] := 10; Dat[8] := 13

Dat[9] := 14; Dat[10] := 15

нц для k от 1 до 10

3. В таблице Dat хранятся данные о количестве сделанных учениками заданий.

целтаб Dat[1:10]

Dat[1] := 7; Dat[2] := 9

Dat[3] := 10; Dat[4] := 5

Dat[5] := 6; Dat[6] := 7

Dat[7] := 9; Dat[8] := 8

Dat[9] := 6; Dat[10] := 7

нц для k от 1 до 10

4. В таблице A хранятся данные о количестве призёров олимпиады по программированию по девяти округам Москвы.

цел k, score

нц для k от 1 до 9

если A[k] >= 9 то

вывод score

Дополнительное задание (при наличии времени или для сильных учащихся)

Задание 2. Самостоятельное решение задачи на компьютере.

Решите на компьютере одну задачу на выбор. Сохраните решение на свой диск (имя файла Zn , где n -номер задачи).

Дана таблица, содержащая 10 целых чисел. Выведите номер максимального числа. Если таких чисел несколько, то номер последнего из них.

Дана таблица, содержащая 10 целых чисел. Найти среднее арифметическое этих чисел.

Дана таблица, содержащая 10 целых чисел. Найти количество четных и нечетных чисел в ней.

Рефлексия

Оцените эффективность собственной работы на уроке. Выберите 1-2 предложения из предложенного списка и дополните их. Запишите в тетрадь.

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


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


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

1. Выясним, какую функцию выполняет каждая из переменных, задействованных в программе.

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

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

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

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

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

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

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

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

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

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

Минпросвещения России
Российское образование
Рособрнадзор
Русское географическое общество
Российское военно-историческое общество
Президентская бибилиотека

Читайте также: