«Весенне-летний фестиваль знаний 2024»

Оператор множественного выбора Case

Презентация (теория, примеры составления программ, задания для самостоятельной работы) к уроку изучения нового материала по указанной темы

Олимпиады: Информатика 1 - 11 классы

Содержимое разработки

Автор: Александрова З.В., учитель физики и информатики МБОУ СОШ №5 пгт Печенга, Мурманская область   Алгоритмы ветвления.  Оператор множественного выбора CASE 9 класс

Автор: Александрова З.В., учитель физики и информатики

МБОУ СОШ №5 пгт Печенга, Мурманская область

 

Алгоритмы ветвления. Оператор множественного выбора CASE

9 класс

Повторение

Повторение

  • Что такое алгоритм? Какие типы алгоритмов вы знаете? Что такое линейное программирование? Как записывается оператор присваивания? Каким образом осуществляется ввод и вывод информации? Какие математические операции вы уже знаете? Какой алгоритм называется разветвляющимся? Приведите примеры. Какие типы данных мы с вами изучили? Какие операторы изучены?
  • Что такое алгоритм?
  • Какие типы алгоритмов вы знаете?
  • Что такое линейное программирование?
  • Как записывается оператор присваивания?
  • Каким образом осуществляется ввод и вывод информации?
  • Какие математические операции вы уже знаете?
  • Какой алгоритм называется разветвляющимся?
  • Приведите примеры.
  • Какие типы данных мы с вами изучили?
  • Какие операторы изучены?
Оператор выбора 1. Оператор  case  в Паскале используется в тех случаях, когда в зависимости от значения какой-либо переменной нужно выполнить те или иные действия (простые или составные операторы).  2. Если вариантов всего два, то можно обойтись и условным оператором  IF , с которым мы уже знакомы. Но если их, к примеру, десять, то использовать конструкцию  if then else  в pascal становится совсем нецелесообразно. В этом случае оптимален оператор  case  варианта.

Оператор выбора

1. Оператор  case  в Паскале используется в тех случаях, когда в зависимости от значения какой-либо переменной нужно выполнить те или иные действия (простые или составные операторы).

2. Если вариантов всего два, то можно обойтись и условным оператором  IF , с которым мы уже знакомы. Но если их, к примеру, десять, то использовать конструкцию  if then else  в pascal становится совсем нецелесообразно. В этом случае оптимален оператор  case  варианта.

Оператор выбора начало Case  of :; :; … :; Else  End ; Ввод S S зн1 Группа операторов 1 зн2 Группа операторов 2 …………… .. знN Группа операторов N else Группа операторов End.

Оператор выбора

начало

Case of

:;

:;

:;

Else

End ;

Ввод S

S

зн1

Группа операторов 1

зн2

Группа операторов 2

…………… ..

знN

Группа операторов N

else

Группа операторов

End.

Оператор выбора начало Ввод N Задача 1.  Составить блок-схему и написать программу, которая по номеру дня недели (1,2,…,7) выведет название этого дня недели (понедельник, вторник,…, воскресенье) иначе вывести сообщение «В неделе только 7 дней!» N 1 Понедельник 2 Вторник …………… .. 7 Воскресенье else В неделе 7 дней End.

Оператор выбора

начало

Ввод N

Задача 1.

Составить блок-схему и написать программу, которая по номеру дня недели (1,2,…,7) выведет название этого дня недели (понедельник, вторник,…, воскресенье) иначе вывести сообщение «В неделе только 7 дней!»

N

1

Понедельник

2

Вторник

…………… ..

7

Воскресенье

else

В неделе 7 дней

End.

Оператор выбора Задача 1. Var n : integer; Begin  writeln(‘Введите число – номер дня недели: ’);  readln(n);  Сase n of  1: writeln(‘понедельник’);  2: writeln(‘вторник’);  3: writeln(‘среда’);  4: writeln(‘четверг’);  5: writeln(‘пятница’);  6: writeln(‘суббота’);  7: writeln(‘воскресенье’);  Else writeln(‘В неделе только 7 дней!’)  End; End.

Оператор выбора

Задача 1.

Var n : integer;

Begin

writeln(‘Введите число – номер дня недели: ’);

readln(n);

Сase n of

1: writeln(‘понедельник’);

2: writeln(‘вторник’);

3: writeln(‘среда’);

4: writeln(‘четверг’);

5: writeln(‘пятница’);

6: writeln(‘суббота’);

7: writeln(‘воскресенье’);

Else writeln(‘В неделе только 7 дней!’)

End;

End.

Оператор выбора Особенности: если нужно выполнить только один оператор, слова begin и end можно не писать нельзя ставить два одинаковых значения если нужно выполнить только один оператор, слова begin и end можно не писать нельзя ставить два одинаковых значения case i+3 of  1: a := b;  2: a := c; end; case i+3 of  1: a := b;  1: a := c; end; 5

Оператор выбора

Особенности:

  • если нужно выполнить только один оператор, слова begin и end можно не писать нельзя ставить два одинаковых значения
  • если нужно выполнить только один оператор, слова begin и end можно не писать
  • нельзя ставить два одинаковых значения

case i+3 of

1: a := b;

2: a := c;

end;

case i+3 of

1: a := b;

1: a := c;

end;

5

Оператор выбора Особенности: значения, при которых выполняются одинаковые действия, можно группировать значения, при которых выполняются одинаковые действия, можно группировать case i of  1: a := b;  2,4,6: a := c;  10..15: a := d;  20,21,25..30: a := e;  else writeln('Ошибка'); end; перечисление диапазон смесь 5

Оператор выбора

Особенности:

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

case i of

1: a := b;

2,4,6: a := c;

10..15: a := d;

20,21,25..30: a := e;

else writeln('Ошибка');

end;

перечисление

диапазон

смесь

5

Оператор выбора Найдите ошибки: case a of case a of  2: a := b  2: begin a := b;  4: a := c  4: a := c; end; end; ; case a of  0..2: a := b;  6..3: a := c; end; case a of  2..5: a := b;  4: a := c; end; 3..6: begin case a of  2: a := b; d := 0;  4: a := c; end; case a+c/2 of  2: a := b;  4: a := c; end; end; 5

Оператор выбора

Найдите ошибки:

case a of

case a of

2: a := b

2: begin a := b;

4: a := c

4: a := c;

end;

end;

;

case a of

0..2: a := b;

6..3: a := c;

end;

case a of

2..5: a := b;

4: a := c;

end;

3..6:

begin

case a of

2: a := b; d := 0;

4: a := c;

end;

case a+c/2 of

2: a := b;

4: a := c;

end;

end;

5

Оператор выбора Var operation:Char; x,y,z:real; stop:Boolean; begin Writeln('Введите первое число'); readln(x); Writeln('Введите число'); readln(y); Writeln('Введите арифметическую операцию +, -, * или /'); readln(operation); Case operation of '+': z:=x+y; '-': z:=x-y; '*': z:=x*y; '/': z:=x/y; Else Stop:=true; End; writeln('Z=',Z:5:2); end.  Задача 2.  Требуется ввести два числа и затем выбрать арифметическую операцию (+,-,*,/). По выбору операции, программа должна произвести вычисления и вывести результат.

Оператор выбора

Var

operation:Char;

x,y,z:real;

stop:Boolean;

begin

Writeln('Введите первое число');

readln(x);

Writeln('Введите число');

readln(y);

Writeln('Введите арифметическую операцию +, -, * или /');

readln(operation);

Case operation of

'+': z:=x+y;

'-': z:=x-y;

'*': z:=x*y;

'/': z:=x/y;

Else

Stop:=true;

End;

writeln('Z=',Z:5:2);

end.

Задача 2.

Требуется ввести два числа и затем выбрать арифметическую операцию (+,-,*,/). По выбору операции, программа должна произвести вычисления и вывести результат.

Program Number3; Var a : integer; Begin  writeln('Введите цифру '); readln(a);  if (a9) then writeln ('Это число не является цифрой') else  case a of  0 : writeln ('ноль');  1 : writeln ('один');  2 : writeln ('два');  3 : writeln ('три');  4 : writeln ('четыре');  5 : writeln ('пять');  6 : writeln ('шесть');  7 : writeln ('семь');  8 : writeln ('восемь');  9 : writeln ('девять');  end;  readln; End. Задача 3. Приведите введенное пользователем число от 0 до 9 к его словесному представлению. Вывести символьное описание введенной цифры

Program Number3;

Var a : integer;

Begin

writeln('Введите цифру '); readln(a);

if (a9) then writeln ('Это число не является цифрой') else

case a of

0 : writeln ('ноль');

1 : writeln ('один');

2 : writeln ('два');

3 : writeln ('три');

4 : writeln ('четыре');

5 : writeln ('пять');

6 : writeln ('шесть');

7 : writeln ('семь');

8 : writeln ('восемь');

9 : writeln ('девять');

end;

readln;

End.

Задача 3.

Приведите введенное пользователем число от 0 до 9 к его словесному представлению.

Вывести символьное описание введенной цифры

Оператор выбора Program Number2;  Var    a : integer;   Begin    writeln('Введите цифру ');     readln(a);    case a of      0 : writeln ('ноль');      1 : writeln ('один');      2 : writeln ('два');      3 : writeln ('три');      4 : writeln ('четыре');      5 : writeln ('пять');      6 : writeln ('шесть');      7 : writeln ('семь');      8 : writeln ('восемь');      9 : writeln ('девять')    else writeln ('Это число не является цифрой');    end;    readln;  End.

Оператор выбора

Program Number2; Var   a : integer;  Begin   writeln('Введите цифру ');    readln(a);   case a of     0 : writeln ('ноль');     1 : writeln ('один');     2 : writeln ('два');     3 : writeln ('три');     4 : writeln ('четыре');     5 : writeln ('пять');     6 : writeln ('шесть');     7 : writeln ('семь');     8 : writeln ('восемь');     9 : writeln ('девять')   else writeln ('Это число не является цифрой');   end;   readln; End.

Оператор выбора Сравните программы: Оператор if Оператор case program  chislo;  var  n : shortint;  begin        write (‘input number: ');       readln(n);        if  n=0  then   write (‘zero')          else   if  n=1  then   write (‘one')           else   if  n=2  then   write (‘two')            else   if  n=3  then   write (‘three')              else   if  n=4  then   write (‘four')                else   if  n=5  then   write (‘five')                  else   if  n=6  then   write (‘six')                    else   if  n=7  then   write (‘seven')                      else   if  n=8  then   write (‘eight')                        else   if  n=9  then   write (‘nine')                          else   write ('This is not a number');  end . program chislo;  var n:shortint;  Begin        write (‘Input number: ');       readln(n);        case  n  of         0: write ('zero');         1: write ('one');         2: write (‘two');         3: write (‘three');         4: write (‘four');         5: write (‘five');         6: write (‘six');         7: write (‘seven');         8: write (‘eight');         9: write (‘nine');         else write ('This is not a number');        end ;  end .

Оператор выбора

Сравните программы:

Оператор if

Оператор case

program  chislo; var  n : shortint; begin       write (‘input number: ');      readln(n);       if  n=0  then   write (‘zero')         else   if  n=1  then   write (‘one')          else   if  n=2  then   write (‘two')           else   if  n=3  then   write (‘three')             else   if  n=4  then   write (‘four')               else   if  n=5  then   write (‘five')                 else   if  n=6  then   write (‘six')                   else   if  n=7  then   write (‘seven')                     else   if  n=8  then   write (‘eight')                       else   if  n=9  then   write (‘nine')                         else   write ('This is not a number'); end .

program chislo; var n:shortint; Begin       write (‘Input number: ');      readln(n);       case  n  of        0: write ('zero');        1: write ('one');        2: write (‘two');        3: write (‘three');        4: write (‘four');        5: write (‘five');        6: write (‘six');        7: write (‘seven');        8: write (‘eight');        9: write (‘nine');        else write ('This is not a number');       end ; end .

Оператор выбора Оператор выбора  позволяет выбрать одно из нескольких  возможных продолжений программы. Параметром, по которому осуществляется выбор, служит так называемый ключ выбора (или селектор) - выражение любого типа (кроме типов REAL и STRING) Перебор из возможных значений выражения case выражение of  значение1 : оператор (группа операторов);  значение2 : оператор (группа операторов);  . . . . . . . . . . . . . . . . . . . .  значениеN : оператор (группа операторов)   else оператор (группа операторов);  end ; Перебор из возможных значений выражения

Оператор выбора

Оператор выбора позволяет выбрать одно из нескольких возможных продолжений программы. Параметром, по которому осуществляется выбор, служит так называемый ключ выбора (или селектор) - выражение любого типа (кроме типов REAL и STRING)

Перебор из возможных значений выражения

case выражение of значение1 : оператор (группа операторов); значение2 : оператор (группа операторов); . . . . . . . . . . . . . . . . . . . . значениеN : оператор (группа операторов) else оператор (группа операторов); end ;

Перебор из возможных значений выражения

Оператор выбора

Оператор выбора

  • Если переменная не принимает ни одно из перечисленных значений, то работает ветка «else»;
  • В роли переменной может выступать только переменная порядкового типа (можно указывать диапазон);
  • Если в операторе должно быть несколько действий, то их заключают в операторные скобки;
Оператор выбора Самостоятельна работа Задача 1.  По введенному номеру месяца выведите на экран квартал к которому он относится. (Первый квартал – январь, февраль, март, второй квартал – апрель, май, июнь, третий квартал – июль, август, сентябрь, четвертый квартал – октябрь, ноябрь, декабрь) Задача 2.  Определить ваши действия в зависимости от дня недели. Например, суббота - еду в баню, воскресенье - еду в гости и т. д. Программа запрашивает ввод дня недели и выводит на экран ваши действия в зависимости от составленного расписания. Задача 3.  Определить вид функции в зависимости от значения аргумента: y=7 при х5. Программа запрашивает ввод значения

Оператор выбора

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

Задача 1.

По введенному номеру месяца выведите на экран квартал к которому он относится. (Первый квартал – январь, февраль, март, второй квартал – апрель, май, июнь, третий квартал – июль, август, сентябрь, четвертый квартал – октябрь, ноябрь, декабрь)

Задача 2.

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

Задача 3.

Определить вид функции в зависимости от значения аргумента: y=7 при х5. Программа запрашивает ввод значения "х" и выводит на экран вид функции "у".

Задача 4.

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

1 – сумма двух чисел,

2 – разность двух чисел,

3 – произведение двух чисел,

4 – целая часть от деления,

5 – остаток от деления,

6 – квадратный корень числа,

иначе введен неизвестный номер операции.

Оператор выбора Задача 5. Вводится число от 1 до 10.  Вывести данное число, записанное римскими цифрами (I, II, III, IV, V, VI, …., X).

Оператор выбора

Задача 5.

Вводится число от 1 до 10.  Вывести данное число, записанное римскими цифрами (I, II, III, IV, V, VI, …., X).

https://kopilkaurokov.ru/informatika/presentacii/opierator-mnozhiestviennogho-vybora-case  https://en.ppt-online.org/167286  https://infourok.ru/operator-mnozhestvennogo-vibora-case-669907.html

https://kopilkaurokov.ru/informatika/presentacii/opierator-mnozhiestviennogho-vybora-case

https://en.ppt-online.org/167286

https://infourok.ru/operator-mnozhestvennogo-vibora-case-669907.html

Получите свидетельство о публикации сразу после загрузки работы



Получите бесплатно свидетельство о публикации сразу после добавления разработки


Олимпиады «Весенне-летний фестиваль знаний 2024»

Комплекты учителю



Качественные видеоуроки, тесты и практикумы для вашей удобной работы

Подробнее

Вебинары для учителей



Бесплатное участие и возможность получить свидетельство об участии в вебинаре.


Подробнее