Меню
Разработки
Разработки  /  Информатика  /  Уроки  /  Оператор выбора Case…of

Оператор выбора Case…of

Цель методической разработки - изучить возможности программирования, используя оператор выбора и дать практические навыки работы с оператором Case..of.
30.03.2013

Описание разработки

Цели занятия:

а) образовательная

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

б) развивающая

создать условия для развития у студентов умения структурировать информацию

содействовать развитию обучающихся умений общаться;

в) воспитательная

формирование интерес к своей профессии.

Оборудование:

мультимедийный проектор;

интерактивная доска;

презентация  «Опе ратор выбора Case..of»;

карточки-задания;

анкета по рефлексии.

Ход занятия

  1. Организационный момент

Приветствие, заполнение классного журнала, фиксация  присутствующих, организация взаимопроверки письменного домашнего задания (приложение 1- смотри архив).

  1. Проверка и оценка знаний студентов

Часть группы проводит взаимопроверку домашнего задания (приложение 1), оценку работ и ее письменное аргументирование, остальные  - самостоятельно выполняют задания (приложение 2-смотри архив), используя при решении условный оператор. На выполнение первого этапа проверки  работы отводится не более 10 минут.

Преподаватель осуществляет контроль за работой студентов.

После того как работа окончена, на слайд  выводятся решения задачи студенты, отвечавшие на вопросы теста и выполнившие домашнее задание, самостоятельно оценивают свою работу. Для тех, кто справился с заданиями - на слайде представлена задача, которую нужно решить: один студент выходит к доске, остальные – решают задачу на местах.

Задача из народного творчества

«Прямо пойдёшь – костей не соберёшь.

Направо пойдёшь – или костей не соберёшь или клад найдёшь

Налево пойдёшь – к Кощею попадёшь».

Решение: ожидаемый листинг программы с использованием условного оператора.

Program pr;

Var a:string;

Begin

Writeln(‘куда пойдешь: направо, налево или прямо?’);

Redln(a);

If a=’направо’  then writeln(‘костей не соберёшь или клад найдёшь!’;

If a=’налево’ then writeln(‘к Кощею попадёшь!’);

If a=’прямо’ then written(‘костей не соберешь!’)

End.

3. Подведение итогов проверки

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

4. Сообщение темы занятия, постановка целей и задач

Преподаватель: Мы продолжаем изучение условной алгоритмической конструкции. На данный момент, мы уже знакомы с двумя её видами. Цель этого урока познакомиться с оператором варианта и научиться использовать его при решении задач. Так как часто приходиться иметь дело с более многообразными ситуациями, когда из многих возможных вариантов приходиться выбирать что-то одно.

Пример: выбор учебного заведения, выбор костюма, и т.д.

5. Изложение нового материала, применяемая методика (объяснение с опорой на имеющиеся знания обучающихся и конспектированием)

Презентация к уроку

Преподаватель: Оператор варианта в таких ситуациях может быть использован именно тогда, когда  выполнение одного из нескольких действий зависит от значения выражения порядкового типа. Т.е. тех типов,  количество значений которых можно чётко указать, а сами значения перечислить. (Это целочисленные типы, символьный, логический, перечисляемый, интервальный типы). Оператор варианта часто используют для замены конструкций из вложенных условных операторов. Управляющая конструкция "выбор" является идеальным средством для обработки ситуаций с многими (более чем с двумя) исходами, т.е. в случае, когда условие может принимать более двух значений. Оператор "выбор" имеет следующую структуру:

Case <порядковая_переменная> of

<значение_1>:<оператор_1>;

<значение_2>:<оператор_2>;

. . .

<значение_N>:<оператор_N>;

[else <оператор_N+1>];

End;

В этой структуре:

<порядковая_переменная> — порядковая переменная, значение которой проверяется;

<значение_*> — константы, с которыми сравнивается значение порядковой переменной;

<оператор_*>  — операторы, из которых выполняется тот, с константой которого совпадает значение порядковой переменной.

Ветвь оператора else является необязательной. Если она отсутствует, и значение порядковой переменной не совпадает ни с одной из перечисленных констант, весь оператор рассматривается как пустой.

Замечание 1: В отличии от оператора If перед словом else точку с запятой ставить можно, но необязательно.

Замечание 2: Если для нескольких констант нужно выполнять один и тот же оператор, их можно перечислить через запятую сопроводив их одним оператором. Существует возможность указать диапазон возможных значений.

Например, диапазон от 1 до 100 включительно указывается так: 1 . . 100

Как вы уже заметили, в операторе "выбор" после двоеточия может указываться только один оператор. Для того чтобы выполнить несколько операторов, так же как и в условном операторе, применяют составной оператор.

Case <порядковая_переменная> of

<значение_1>:Begin

<оператор_1_1>;

  . . .

<оператор_1_N>;

End;

<значение_2>:Begin

                        <оператор_2_1>;

                        . . .

                        <оператор_2_N>;

                        End;

<значение_N>:Begin

                        <оператор_N_1>;

                        . . .

                        <оператор_N_N>;

                        End;

else

                        Begin

                        <оператор_E_1>;

                        . . .

                        <оператор_E_N>;

                        End;

End;

Замечание 3: Из всех возможных ветвей операторов управляющей конструкции выбор, выполняется только одна ветвь, даже если значение порядковой переменной совпадает с несколькими возможными значениями, отвечающими за разные ветви операторов. Выполняется та ветвь, которая расположена раньше. Как видно из блок-схемы значение порядковой переменной сравнивается последовательно со всеми возможными значениями, и как только найдется значение, которому равна порядковая переменная, выполняется ветвь операторов, сравнения прекращаются и управляющая конструкция прекращает свою работу. Поэтому при составлении программ с использованием управляющей конструкции "выбор", раньше необходимо располагать более "строгие" последовательности операторов.

  1. Закрепление нового материала

№1. Игра «Лучший вратарь».

После того, как материал пройден, преподаватель дает время еще раз посмотреть конспекты, затем несколько студентов, которые считают, что хорошо усвоили материал, поднимают руку. Один из них выходит к доске, он и есть вратарь. Теперь он должен поймать “ мяч–вопрос”, а остальные ему задают вопрос по этой теме. Если он не ответит, то отвечает тот, кто задал этот вопрос. Студенты очень хорошо следят за вопросом, повторных вопросов не бывает. Положительная сторона этой игры: преподавателю становится ясно, как усвоили студенты материал новой темы.

№2. Привести свои примеры множественного ветвления.

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

№3. Составьте алгоритм на языке блок-схем для вывода времени года (зима, весна, лето, осень) по введённому номеру месяца.

№4. Найти и назвать те фрагменты произведений, где присутствует:

А) полное ветвление;

Б) неполное ветвление;

В) множественное ветвление.

В) Из народного творчества

«Прямо пойдёшь – костей не соберёшь.

Направо пойдёшь – или костей не соберёшь или клад найдёшь

Налево пойдёшь – к Кощею попадёшь».

№5. Реализовать сказочный фрагмент на языке программирования:

«Пойдёшь налево – коня потеряешь,

направо пойдёшь – деньги потеряешь,

прямо пойдёшь – сам пропадёшь»

(Вопрос: Как указать направление?

Ожидаемый ответ: Вероятно с помощью клавиш стрелок. Но как?)

Решение:

Uses crt;

Var ch:char;

Begin

Clrscr;

Writeln(‘укажите направление пути’);

Ch:=readkey;

If ch=#0 then ch:=readkey;

Case ch of

#75:writeln(‘коня потеряешь’);

#77:writeln(‘деньги потеряешь’);

#72:writeln(‘сам пропадёшь’);

{else writeln(‘таких не берут в космонавты’);}

end;

end.

Замечание: клавиши стрелок относятся к клавишам с двухбитовым кодом, первый из которых равен 0, а для определения второй части кода пришлось снова использовать функцию readkey.

Вопрос: Для решения какой задачи данный алгоритм может быть использован как заготовка?

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

Замечание: К – знак арифметической операции.

Решение:

Program calc;

Uses crt;

Var x,y,z:real;

K:char;

Begin

Writeln(‘Введите два числа’);readln(x,y);

Writeln(‘Укажите операцию’);readln(k);

Case k of

‘+’: z:=x+y;

‘-’: z:=x-y;

‘*’: z:=x*y;

‘/’: z:=x/y;

end;

writeln(z);

end.

7. Подведение итогов проведенного занятия

 Устный опрос:

Для чего предназначен оператор выбора?

В чём разница между условным оператором и оператором варианта?

В чём преимущества каждого из них

Могут ли выполниться несколько ветвей оператора "выбор" за один раз?

Сколько операторов можно написать после возможного значения переменной?

Может ли сразу несколько констант фигурировать в качестве возможного значения переменной?

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

8. Задание студентам для самостоятельной работы во внеурочное время

Напишите программу и составьте блок-схему к следующим задачам:

№1. Задано значение времени суток в часах. Определите какому периоду суток это время соответствует (утро/день/…). Если данные введены неверно -  программа должна выдать сообщение. (Замечание: соотнести временные рамки с общепринятыми).

№2. Задан N номер месяца. Составьте алгоритм на языке блок-схем для вывода времени года (зима, лето, …) в соответствии со значением N.

9. Рефлексия

В конце занятия наиболее полезно провести игру:

На доске – поляна из цветов, над каждым цветком – этап урока. Перед каждым студентом - бабочка. Преподаватель предлагает студентам прикрепить свою бабочку на тот цветок, какой вид деятельности ему понравился больше всего.

-80%
Курсы повышения квалификации

Проектная деятельность учащихся

Продолжительность 72 часа
Документ: Удостоверение о повышении квалификации
4000 руб.
800 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Оператор выбора Case…of (0.17 MB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт