Ветвление. Операторы условного перехода.

advertisement
Дата: _________________
Класс: _________________
Тема урока: Ветвление. Операторы условного перехода.
Цель:
Учебная: Ознакомить учащихся с понятием ветвление. И программированием операторами условного перехода.
Воспитательная: Воспитать стремление к аккуратности и точности исполнения.
Развивающая: Расширить знания учащихся по применению циклических алгоритмов.
Основные знания и умения:
Знать и уметь:
1.
Выполнять основные правила из каждого этапа циклических алгоритмических задач
2.
Уметь пользоваться ВТ.
3.
Выполнять основные алгоритмы
Вид занятия:
Лекция
План – занятия:
1. Организационный момент-2
2. Проверка домашнего задания
-5
3. Изложения новой темы
-20
4. Практическая работа
-10
5. Закрепление темы
-5
6. Д/з
-3
Конспект:
В языке Паскаль имеются два условных оператора:
if (оператор ветвления)
case (оператор выбора).
И не условный оператор: GOTO
Оператор if обеспечивает выбор из двух альтернатив, оператор выбора case позволяет сделать выбор из произвольного
числа имеющихся вариантов.
На этом уроке рассмотрим оператор If.
Условный оператор If (оператор ветвления)
Полная формы условного оператора называется If-then-else, имеет вид:
If условие
Then [оператор1]
Else [оператор2];
Если в качестве оператора должна выполняться серия операторов, то они объединяются в операторные скобки BeginEnd.
If then
Begin
[операторы1]
End
Else
begin
[операторы2]
End;
Слова if (если) и Then (то) – зарезервированные.
Замечание. Перед ключевым словом else (иначе) точка с запятой не ставится, она ставиться после всего оператора If.
Условие представляют собой логические выражение. Простые условия записываются в виде равенств или неравенств.
В сложных условиях несколько простых условий объединяются с помощью логических операций or, and. В этом случае
простые условия заключаются в круглые скобки.
На рисунке показана блок-схема полной формы оператора.
Алгоритм выполнения полного условного оператора:
1. Проверяется значение логического выражения, записанного в условии после слова If
2. Если условие истинно (значение выражения условие равно True), то выполняется оператор 1, указанный после
слова Then
3. Если условие ложно, то выполняется оператор 2, записанный после слова Else.
Неполная форма условного оператора называется if-then, имеет вид:
If условие
Then [оператор];
Если в качестве оператора должна выполняться серия операторов, то они объединяются в операторные скобки BeginEnd.
If условие Then
Begin
[операторы]
End;
В
неполном
ветвлении
На рисунке показана блок схема оператора if-then.
ветвь
Else
отсутствует.
Алгоритм выполнения неполного условного оператора
1. Проверяется значение логического выражения, записанного в условии после слова If
2. Если условие истинно (значение выражения условие равно True), то выполняется операторы, указанный после
слова Then
3. Если условие ложно, то ничего делать не надо. Происходит переход к следующему оператору.
Операторы ветвления могут быть вложенными, т.е. один оператор if можно расположить внутри другого. В этом случае
он позволяет производить выбор более чем из двух вариантов. При написании исходного кода с вложенными
операторами для удобочитаемости кода вложенные операторы выделяются отступами.
If then begin
[операторы 1;]
end
Else if eckjdbt 2 then begin
[операторы2;]
End
.
.
else if условиеN
[операторыN;]
end
else begin ;
end;
Применение условного оператора if рассмотрим на примерах.
Пример 1. С клавиатуры ввести два различных числа. Найти большее из них и вывести его на экран.
Решение
В этом примере нужно произвести выбор одного из двух вариантов, для этого используется оператор if-then-else.
program primer6_1;
var a, b, m:integer;
begin
writeln('Введите два числа: ');
readln(a, b);
if a>b then m:=a
else m:=b;
writeln('Большее из них: ', m);
end.
Пример 2. Даны три отрезка. Можно ли из них построить треугольник?
Решение. Для любого треугольника сумма его двух сторон должна быть больше третьей стороны (неравенство
треугольника). Если a, b, c – стороны предполагаемого треугольника, то нужно сравнить длину каждого отрезка с
суммой двух других. Если хотя бы в одном случае отрезок окажется больше суммы двух других, то треугольник из
таких отрезков не построить.
Для решения этой задачи используется оператор if-then-else со сложным условием.
program primer6_2;
var a, b, c: integer;
begin
write (' Введите длины отрезков: ');
readln (a,b,c);
if (a < b+c) and (b < a+c) and (c < a+b) then
writeln ('Можно построить треугольник.')
else
writeln ('Нельзя построить треугольник.');
end.
Итог урока: оценивание
Домашнее задание: решить задачи на странице №2
Download