7


  • Учителю
  • Разработка по информатике на тему 'Разветвляющийся алгоритм'

Разработка по информатике на тему 'Разветвляющийся алгоритм'

Автор публикации:
Дата публикации:
Краткое описание:
предварительный просмотр материала


Тема урока: «Решение задач-алгоритм»

Цели урока:

расширить знания уч-ся об алгоритме;

- изучение базовой алгоритмической структуры «Ветвление», полной и неполной формах;

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

- отработка навыков практической работы построения блок-схемы и ее отладка;

- развитие навыков самостоятельной работы уч-ся


Оборудование: презентация «Разветвляющийся алгоритм , интерактивная доска, проектор


Ход урока:


I. Оргмомент

II. Материал урока:

Разминка:

Задание: Исправь ошибки.

Найдите площадь прямоугольного треугольника с катетами Х и Y.


АЛГ площадь (цел X , Y, вещ S)

АРГ X

РЕЗ Y

НАЧ

S = X * Y : 2

КОН

ИЗУЧЕНИЕ НОВОГО МАТЕРИАЛА

Условный оператор If (оператор ветвления)

Полная формы условного оператора называется If-then-else, имеет вид:

If условие

Then [оператор1]

Else [оператор2];

Если в качестве оператора должна выполняться серия операторов, то они объединяются в операторные скобки Begin-End.

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 [оператор];

Если в качестве оператора должна выполняться серия операторов, то они объединяются в операторные скобки Begin-End.

If условие Then

Begin

[операторы]

End;

В неполном ветвлении ветвь Else отсутствует.
На рисунке показана блок схема оператора if-then.

Алгоритм выполнения неполного условного оператора

  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.

Задачи для самостоятельного выполнения

  1. Найти наибольшее из трех данных чисел.

  2. Запишите условный оператор, в котором значение переменной вычисляется по формуле: a + b, если a - нечетное и a*b, если a - четное.

  3. Вывести на экран номер четверти, которой принадлежит точка с координатами (x, y), при условии, что x и y отличны от 0.

  4. После выполнения операторов
    a := 0;
    If a<>0 Then; a := 2
    значение переменной равно двум. Объясните почему.

  5. Если целое число M делится нацело на целое число N, то вывести на экран частное от деления, в противном случае - сообщение ''M на N нацело не делится''.

V. ПОДВЕДЕНИЕ ИТОГОВ УРОКА

1.Устное задание:

Найди соответствие


АЛГ наименьшее ( вещ А,В,М)

АРГ А , В

РЕЗ М

НАЧ

ЕСЛИ А < В

ТО М : = А

ИНАЧЕ М : = В

ВСЕ

КОН


Ответ: схема 2


2. ВОПРОСЫ:

-Какой алгоритм называется разветвляющимся?

- Назовите формы ветвления.

- В чем отличие полного ветвления от неполного?

- В чем сходство?


VI. ДОМАШНЕЕ ЗАДАНИЕ

Ветвление полная и неполная формы

Задача:




 
 
X

Чтобы скачать данный файл, порекомендуйте его своим друзьям в любой соц. сети.

После этого кнопка ЗАГРУЗКИ станет активной!

Кнопки рекомендации:

загрузить материал