- Клевцова Светлана Борисовна, учитель информатики
- Попов Дмитрий Николаевич, учитель физики, информатики
Занятия рассчитаны на 3 урока.
1 урок — лекция. 2 урок — практическое занятие. 3
урок — лабораторная работа.
Цели занятий
Обучающие.
- Дать представление о разветвляющейся
конструкции алгоритма и условного оператора
программы, написанной на языке Pascal; - Закрепить умения и навыки по работе с
разветвляющимися конструкциями алгоритма и
условного оператора программы, написанной на
языке Pascal.
Воспитательные.
- умение работать в коллективе и в паре,
- формирование ответственного отношения к учебе,
аккуратность.
Развивающие.
- Развитие абстрактного и логического мышления.
- Умение выделять из класса задач задачи,
решаемые с использованием конкретного
алгоритма. - Умение аргументировано отстаивать свою точку
зрения.
Структура занятий:
Занятие 1
- оргмомент, 3мин
- лекция 25мин
- разбор вариантов решения задач 10мин
- вариативное домашнее задание 2 мин
Занятие 2
- оргмомент 3 мин
- проверка домашнего задания 10 мин
- объяснение структуры условного оператора; 10 мин
- индивидуальная работа учащихся 15 мин
- домашнее задание; 2 мин
Занятие 3
- оргмомент, 3мин
- проверка домашнего задания, 15 мин
- проверочный тест, 20 мин
- домашнее задание; 2 мин.
Занятие 1
Учитель. Повторим структуру программы
языка Pascal.
- В каком разделе программы идет описание типов
переменных? - Какой знак препинания стоит после слова VAR?
- С какого слова начинается тело программы?
- Чем заканчивается любая программа?
Итак, структура программы на Turbo Pascal:
Program Program_name;
Var {раздел_объявления_переменных}
<список имен переменных>:<тип1>;
<другой список имен переменных>:<тип2>;
…..
<другой список имен переменных>:<тип n>;
begin {начало основной программы}
{тело_программы, состоящее из операторов,
вызовов процедур}end.
Вы знакомы с оператором «присвоить».
Освоим новую конструкцию, позволяющую сделать
выбор действий. Начнем с алгоритмов. Алгоритм, в
результате которого обеспечивается выбор на
одного из двух возможных действий, называется разветвляющимся.
Такой алгоритм обязательно содержит условие и в
зависимости от результата выполнения условия
происходит выбор действия.
Например: Если день рабочий, то идем в
школу, иначе будем отдыхать.
Таких примеров можем привести много из обычной
жизни и наук. К примеру, физика: Если удар
упругий, то масса тела сохраняется, иначе масса
изменяется. Математика: Если у
равностороннего четырехугольника углы прямые, то
назовем его прямоугольником, иначе назовем
его ромбом.
Представим такую конструкцию блок-схемой.
Как Вы думаете, почему две разные схемы? Вновь
обратимся к математике.
Рассмотрим два примера
Пример 1
Пример 2 .
В примере 1 условия являются
взаимоисключающими, поэтому выберем одно из них.
Это условие будет определять выбор действия. Если
x-1 <0,то y=4, иначе y=3. Это предложение
соответствует схеме 1. Можно ли по-другому
составить это выражение?
В примере 2 мы произведем действие только при
определенном условии. Каком?
Правильно, Если x не равен 0, то, иначе ничего
делать не будем. Последнюю часть
предложения можно отбросить. Получится
следующее предложение: Если x не равен 0, то. Это предложение
соответствует схеме 2.
Вот и у нас получилось, что конструкция
ветвления имеет два вида: Полная конструкция
и Неполная конструкция, которые представлены
на схеме 1 и 2 соответственно.
Потренируемся в построении блок-схем.
Постройте блок-схему, соответствующую
алгебраическому выражению. Учащиеся получают
задания на карточках.
Учащиеся выполняют задания на местах и у доски.
Идет обсуждение предложенных решений. Какому
типу схемы соответствуют построенные Вами
блок-схемы? Почему?
Этап объяснения домашнего задания. Домашнее
задание: построить блок-схемы вычисления
следующих задач.
- Вычислить частное от деления двух чисел.
Проверить правильность введенных данных, если
они ошибочны (делитель не равен 0), то выдать
сообщение об ошибке. - Вычислить площадь кольца. Проверить
правильность введенных данных. - Вычислить стоимость покупки с учетом скидки.
Скидка в 10% предоставляется, если сумма покупки
больше 10000 рублей.
Занятие 2
Учитель. Проверим домашнее задание. Кто
предложит свои варианты решения задания?
Ученики. На доске записываются варианты
решений заданий и обсуждаются учащимися.
Учитель. Вы хорошо справились с заданием.
Учитель. Мы с вами подошли к изучению важной
конструкции языка, называемой условный оператор.
На языке Pascal он выглядит так: IF…THEN…ELSE (англ.
Если…. То… Иначе…).
Напишем программу: которая запрашивает два
неравных числа с клавиатуры и выводит на экран
сообщение “1-е число больше чем 2-е” или “2-е
число больше чем 1-е”.
Вопрос: как проверить числа на БОЛЬШЕ/МЕНЬШЕ?
Используем условный оператор:
If <условие> Then <действие 1> Else
<действие2>;
Работает этот оператор следующим образом:
проверяется верность выполнения условия. Если
условие истинно, то выполняется <действие
1>. Иначе — <действие2> В части условия
могут использоваться следующие знаки сравнения:
Приведём пример и сделаем к нему комментарий.
Для начала запишем словами сравнение двух
чисел А и В:
Если А > B то Write(A,’ больше чем
‘,B,’!’) иначе Write(B,’ больше чем ‘,A,’!’);
Посмотрим теперь, как выглядит эта конструкция
на Pascal:
If A > B Then Write(A,’ больше чем ‘,B,’!’) else
Write(B,’ больше чем ‘,A,’!’);
Рассмотрим этот оператор.
- Сначала идет служебное слово If
- После него стоит условие, в котором
используются знаки сравнения. - Если это условие истинно, то есть A > B, то
выполнится действие, указанное после слова Then. - Если же условие ложно, то есть A < B, то выполнится действие, указанное после слова Else.
Обратите внимание, перед словом Else нет
точки с запятой «;». Это еще не окончание
оператора.
Подобная конструкция соответствует блок-схеме
1 предыдущего урока.
Давайте попробуем записать этот оператор,
используя другое условие. Какое? Как будет
выглядеть запись условного оператора с таким
условием?
Действия после Else может и не быть. Это
используется, когда действие может быть
выполнено только при заданном условии. Тогда
ветка Else отсутствует. Вот такой пример:
If A = B Then Write(A,’ равно ‘,B,’!’);
Эта конструкция соответствует схеме 2
предыдущего урока.
Напишем программы для решения примеров
предыдущего урока
PROGRAM VAR Y,X: INTEGER; BEGIN WRITE(‘X=’); READLN(X); IF X-1<0 THEN Y:=4 ELSE Y:=3; WRITELN(‘Y=’,Y); END. |
PROGRAM VAR Y,X: INTEGER; BEGIN WRITE(‘X=’); READLN(X); IF X<>0 THEN y:=1/x; IF X<>0 THEN WRITELN(‘Y=’,Y) ELSE WRITELN(‘РЕШЕНИЯ НЕТ’); END. |
Наберите программы в среде TP и разберитесь, как
они работают. Что будет выведено на экран при x= -5
и x=5, x=0? Предложите другой вариант записи
условного оператора программы 1.
Домашнее задание. Запишите алгебраические
выражения предыдущего урока с помощью условного
оператора. Попробуйте написать программы для
предыдущего д/з.
Занятие 3
Учитель. Проверим домашнее задание.
Ученики предлагают вариант решения домашнего
задания, записывая на доске. Идет обсуждение
вариантов.
А теперь проведем небольшой тест
Вариант 1
- Записать представленный алгоритм в виде
условного оператора: - Определить тип переменной y:
- y: = a / b;
- y : = a mod b;
- y : = sqrt (a);
- y : = abs (a- b);
- Для x = 4,a y = 5 определить значение z:
- If abs(x — y) > = 1 then z : = sqr( y) else z : = sqrt (x);
- x : = y; z : = x / y; z : = z + y — x;
- y : = x; if x> y then z : = sqrt (x) else z : = sqr
(y); - Записать на языке Pascal следующие выражения
- y = 5x4 — 10 x + 2
- y =
Чему будет равен Y при значениях
а) X= — 3; б) X= 3; в) X= 0 ?
Вариант 2
Учитель. Я надеюсь, что работа не была для Вас
сложной. Впереди нас ожидает дальнейшее изучение
конструкции УСЛОВНЫЙ ОПЕРАТОР.
Д/з. Учитель диктует задачу на дом: Написать
программу, которая выводит пример на умножение
двух однозначных чисел, запрашивает ответ
пользователя, проверяет его выводит сообщение
“Правильно” или “Вы ошиблись” и правильный
результат.
Задав некоторые значения получить результат и
оценить его.