Урок информатики в 8 классе
Тема: Операторы ветвления
Цель урока: познакомить учащихся с операторами ветвления.
Задачи:
Образовательная: научить учащихся использовать операторы ветвления при решении задач,
формировать умения и навыки работы с ABC Pascal
Развивающая: развивать логическое мышление, учить анализировать, делать выводы и обобщать
Воспитательная: воспитание интереса к программированию в процессе работы в ABC Pascal,
трудолюбия и навыка самостоятельности при выполнении практической работы, расширять
образовательные возможности учащихся в работе друг с другом.
Тип урока: изучение нового материала
Оборудование: ИД, ПК, программа ABC Pascal, учебники, презентация.
Ход урока
1.Организационный момент. Учитель: Здравствуйте. Давайте мы сейчас при помощи ребуса
. В прошлом году вы начали изучать программирование на
определим ключевое слово нашего урока
примере языка Pascal, научились составлять программы для линейных алгоритмов. Теперь вам предстоит
узнать возможности языка программирования Pascal по программированию алгоритмов ветвления и
циклов.
Открывайте тетради, тема сегодняшнего урока: «Операторы ветвления»
2. Изучение нового материала
Какой алгоритм называется алгоритмом ветвления?
Разветвляющийся алгоритм алгоритм, в котором выполнение действий зависит от
.
поставленного условия, называется алгоритмом ветвления или разветвляющимся алгоритмом.
Как вы думаете, как ставится условие? (наводящие вопросы о математике)
В качестве условий, по которым разветвляется алгоритм, используются операции сравнения
между величинами:
AB
A>= B
А меньше В
А меньше или равно В
А равно В
А больше В
А больше или равно В
A> B
А не равно В
В качестве А и В могут быть переменные, числа и арифметические выражения.
Алгоритмы с условием можно программировать одним из трех способов: с использованием
операторов перехода, условного оператора или оператора выбора.
Оператор перехода
Оператор перехода имеет следующий вид:
GO TO<метка>. Он позволяет передать управление непосредственно определенному оператору программы. Перед
этим определенным оператором должна располагаться метка, отделенная от него двоеточием. В качестве
меток выступают либо целые числа от 0 до 9999, либо идентификаторы. Все метки должны быть описаны
в разделе объявления меток следующим образом:
Label <список меток через запятую>; Labelметка.
Например:
Label metka,1;
Условный оператор IF
Условный оператор изменяет порядок действий в зависимости от выполнения некоторого
условия. Оператор может быть полным или неполным.
Условный оператор на языке программирования Pascal имеет следующий вид:
If <условие> then <оператор1> else <оператор2>; Ifесли, thenто, elseиначе.
Где <условие> выражение логического типа;
<оператор1> выполняется, если условие верно;
<оператор2> выполняется, если условие неверно.
Всю структуру ветвления в программе можно писать на одной строке, но удобнее располагать
условие и ветви структуры на разных строках. Так программу лучше «видно».
If <условие>
then <оператор1>
else <оператор2>;
В условии оператора IF определяется значение true или false логического выражения типа Boolean.
(Логи́ческий тип да́нных, или булев тип, или булевый тип (от англ. Boolean или logical data type) —
примитивный тип данных в информатике, принимающий два возможных значения, иногда
называемых истиной (true) и ложью (false).)
В условном операторе может отсутствовать блок else <оператор2>;
В этом случае условный оператор будет иметь вид:
If <условие> then <оператор1>;
Например:
IF a>0 then a:=sqr(a);
Пример: вывести на экран сообщение о том, положительное число или отрицательное.
Program primer1;
uses crt;
var A:real;
begin
clrscr;
write ('Введите число A: ');
readln (A);
if A>0
then writeln (' Число положительное ')
else writeln(' Число отрицательное ');
readln;
end.
Результат выполнения программы показан на рисунке (на ИД). Наберите текст программы, откомпилируйте ее для разных значений. Для любых ли значений
переменной, а программа работает правильно?
Вложенные условия
Недостатком программы, составленной для предыдущего примера, является то, что в ней не
предусмотрена ответа для числа 0 (ИД).
Чтобы исправить найденную неточность в выполнении программы, понадобится одно условие
вкладывать в другое. Такие условия называются вложенными.
Пример:
if A>0
then writeln (' Число положительное ')
else if A=0
then writeln (' Число 0')
else writeln(' Число отрицательное ');
Обратите внимание, что ставится условие только для положительного числа и числа 0. Для
отрицательного числа ставить условие не надо, потому что, если число не положительное и не 0, оно
отрицательное.
Выполнение данной программы для числа 0 показано на ИД.
Добавьте недостающие строки в свою программу. Проверьте правильность ее работы для
положительного числа, числа 0 и отрицательного числа.
Операторный блок
Встречаются ситуации, когда после слов then или else нужно поставить не один оператор, а
несколько. Разделить их знаком точки с запятой нельзя, потому что этот знак покажет, что структура
условного оператора закончена, а это неверно. Для таких случаев существует понятие «операторный
блок». Те операторы, которые должны быть выполнены после слов then или else, заключают в так
называемые операторные скобки begin…end.
Как в этом случае компилятор отличит конец операторного блока от конца программы?
После слова end, означающего конец оперативного блока, ставится знак точки с запятой. Тогда
компилятору будет понятно, что программа не закончена. (на ИД наглядно показать проверку
компилятором операторного блока).
Важно помнить:
Операторные скобки begin…end объединяют несколько операторов в один операторный блок.
1) нельзя ставить ; перед словом «else»
2) при записи операторного блока каждое зарезервированное слово begin должно быть «закрыто»
Начало
словом end, то есть следует соблюдать правила вложенности операторных скобок.
Пример:
Сахар расфасован в два мешка. Вес первого мешка – m кг, второго n кг. Составьте программу,
Ввод m, n
которая выводит сообщение о том, какой мешок тяжелее, и каков вес этого мешка.
Блоксхема алгоритма решения данной задачи показана на ИД.
n>m
Второй мешок больше
Вывод m
Мешки равны
Вывод m
m>n
Первый мешок больше
Вывод m
Конец Из блоксхемы понятно, что в программе понадобится использование метки и оператора
безусловного перехода GO TO. Поэтому в разделе описаний надо добавить метку.
Program primer2;
uses crt;
label 1;
var m,n:real;
begin
clrscr;
write ('Введите вес мешков m, n= ');
readln (m, n);
if m>n then
begin
writeln(‘первый мешок больше, его вес:’, m:2:2);
go to 1;
end;
if m= 62) then write('Средняя')
else if (num >=75) and (num <= 87) then write('Тяжелая')
else write('Сверхтяжелая');
end. )
Оплата за электроэнергию производится по следующему правилу: за потребленную мощность до А
Задача 2:
кВт в месяц оплачиваются В тенге за 1 кВт, а за потребленную энергию сверхустановленной нормы
оплачиваются из расчета С тенге за 1 кВт. Напишите программу, вычисляющую плату за потребленную
электроэнергию.
( program elektro;
var
A,B,C,n,s: real;
begin
writeln('введите количество потребленной
электроэнергии');
readln(n);
s:=0;
A:=100;
B:=5;
C:=10;
if n>A then s:=A*B+(nA)*C else s:=n*B;
writeln('плата за потребленную энергию=',s);
end. )
4. Итог урока.
Рефлексия
«Светофор»
Учащиеся в начале урока выбирают один из цветов: красный, желтый или зеленый. После урока
или выполненной работы ребята должны высказать свое мнение по вопросу цвета. Красный – нет (что не
понравилось, ошибки), желтый – не совсем (сомнения, трудности) и зеленый – да (что понравилось, что
получилось).
Выставление оценок, выдача домашнего задания.
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.