Урок 2.

Тема: Команда ветвления. Описание команды  ветвления языком программирования.

 

Цели урока:

Обеспечить усвоение учащимися особенностей конструирования разветвляющихся алгоритмов. Добиться усвоения правил использования сложных условий в разветвляющемся алгоритме. Дать понятие операторных скобок.

Воспитание добросовестного отношения к учению, привитие интереса к предмету и убеждённости, что решение большинства проблем, стоящих перед человеком в жизни можно разрешить, реализуя разветвляющийся алгоритм.

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

Ход урока
I. Орг. момент.
Приветствие, проверка присутствующих. Объяснение хода урока.

II.                 Актуализация знаний. (вызвать к доске 2 учеников для подготовки дом. задания).

Вопросы:

Ø                   С какой командой вы познакомились на прошлом уроке.

Ø                   Каков формат оператора условного перехода.

Ø                   Прочитать условие задачи, которые вы придумали дома(2-3 человека)

III.              Проверка домашнего задания.(Д/з. Придумать задачу с разветвляющимся алгоритмом.  Записать решение с по­мощью блок-схемы и на на алгоритмическом языке).

IV.              Новая тема.

1. Мотивация учебной деятельности учеников

Учитель предлагает ученикам составить и запустить на компьютере программу для нахождения Y по формуле: Y=5X/(x-5). Он обращает внимание на то, что если х=5, то компьютер выдает ошибку. Как избежать таких ошибок? Он подводит учеников к выводу о том, что должны существовать специальные способы для проверки и анализа данных в программах.

Программа:(написана на доске)

 

Program matem-1;

Uses CRT;

Var X:real;

      Y:real;

Begin

Writeln(‘Ввести число х’);

   Readln(x);

Y:=5*X/(x-5);

    Writeln(y:3:1);

End.

 

2. Изучение новой темы

После этого урока ученики смогут:

Ø       Рассказать о назначении команды сравнения IF;

Ø       Объяснить назначение основных ключевых слов в этой команде;

Ø       Объяснить правила использования операторных скобок begin и end;

 

              Команда ветвления, ПОЛНАЯ И НЕПОЛНАЯ РАЗВИЛКА

 Условный оператор используется для реализации разветвлений в программе, которые происходят при выполнении некоторого условия и имеет следующую структуру    

IF <условие> THEN команда 1 ELSE команда 2; 

сравните с ветвлением на алгоритмическом языке.

Если  условие  ТО команда 1    Иначе      команда 2

Все

 

Если логическое выражение, выступающее в качестве условия, принимает значение False, то выполняются операторы, расположенные после else (серия2), если True, — операторы, следующие за then.

Поскольку развилка может быть неполной, то возможна и неполная форма записи условного оператора:

                   IF <логическое выражение> THEN серия;

Условный оператор реализует разветвление вычислительного процесса по двум направлениям, одно из которых осуществляется при выполнении условия, другое — в противном случае.

Ø       Доработка программы

Program matem-1;

Uses CRT;

Var X:real;

      Y:real;

Begin

Writeln(‘Ввести число х’);

   Readln(x);

If x=5 then writeln(‘задача не имеет решения’) else

Y:=5*X/(x-5);

    Writeln(y:3:1);  

End.

 

Учитель. Какая ошибка?    Ответ:при х=5 программа  выдает 2 ответа.

Причина? Ответ: Если после операторов then или else следуют более 1 команды, то эти команды заключаются в операторные скобки.

Begin команды  End;

Примечание. Перед else точка с запятой не ставится.

Отладка программы:

program mat;

 uses crt;

 var x,y:real;

 begin

Writeln(‘Ввести число х’);

           readln(x);

 if x=5 then

 begin

  writeln(' задача не имеет решения’);

  end

   else

   begin

    y:=5*x/(x-5);

 writeln(y:3:1);

 end;

 end.

V.                 Практическая работа

ЗАДАЧА 1

      Человек  вводит число А. Если оно  оно положительное,   то ПК вычисляет  корень числа, если же отрицательное, то  возводит его в квадрат.

Вопрос: как записать квадрат и корень числа? Ученики пишут программу на компьютере самостоятельно; 2 сильных ученика пишут  программу на доске.

Program matem-2;

Uses CRT;

Var a:integer;

      Y:real;

Begin

Writeln(‘Ввести число А’);

   Readln(a);

    If a>0 then y:=Sqrt(a) else y:=a*a; 

    Writeln(y:3:1);

End.

 

VI.               Самостоятельная работа.

Задача 2.

   Составьте программу, удваивающую значение целой переменной а, если а>5.

Program Pr2;

Var а : Integer;

Begin

WriteLn (‘Введите число’);

ReadLn (а);

If а >5 Then а := а*2;

WriteLn (‘а =', а);

End.

 

По окончании обсуждение написанных программ на доске.  Выставить оценки.

VII.            Обсуждение изученной темы.

Вопросы:

a.      Рассказать о назначении команды сравнения IF;

b.      Объяснить назначение основных ключевых слов в этой команде;

c.      Объяснить правила использования операторных скобок begin и end;

 

VIII.          Итоги урока. Выставление оценок.

Домашнее задание:

Ø       выучить теорию.

Ø       Написать программу. Из 2 данных чисел найти  наименьшее.

 

 

 

 

 

 

 

 

Hosted by uCoz