Оператор множественного выбора CASE Цель урока: Познакомить учащихся
Оператор множественного выбора CASE
Цель урока: Познакомить учащихся со способами организации в программах ветвления на три и более рукавов (ветвей).
Структура оператора выбора такова: case <переменная> of <значение1>:<действия1>; <значение2>:<действия2>; <значение3>:<действия3>; ……………………………………………………………………; else <действия 4>; end;
Задача 1. Приведите введенное пользователем число от 0 до 9 к его словесному представлению. Сначала рассмотрим данную задачу с использованием оператора if: program chislo; var n : shortint; {-128..127} begin write('Введи число: '); readln(n); if n=0 then write('Нуль') else if n=1 then write('Один') else if n=2 then write('Два') else if n=3 then write('Три') else if n=4 then write('Четыре') else if n=5 then write('Пять') else if n=6 then write('Шесть') else if n=7 then write('Семь') else if n=8 then write('Восемь') else if n=9 then write('Девять') else write('Это не цифра'); end;
Теперь с помощью оператора case: program chislo; var n : shortint; begin write('Введи число: '); readln(n); case n of 0: write('Нуль'); 1: write('Один'); 2: write('Два'); 3: write('Три'); 4: write('Четыре'); 5: write('Пять'); 6: write('Шесть'); 7: write('Семь'); 8: write('Восемь'); 9: write('Девять'); else write('Это не цифра'); end; end;
Задача 2. Написать программу, которая запрашивает у пользователя номер месяца и выводит соответствующее название времени года. Предусмотреть ошибку ввода. program nomermesaca; var x:byte; begin writeln(‘ введите номер месяца ‘); readln(x); Case x of 1,2,12:writeln (‘зима’); 3,4,5:writeln (‘весна’); 6,7,8:writeln (‘лето’); 9,10,11:writeln (‘осень’) else writeln (‘ошибка’); end; end.
Задача 3. Составить программу, имитирующую работу своеобразного калькулятора. program Calc; var a, b, c: integer; begin writeln(‘Введите a’); Read(a); writeln(‘Введите b’); Read(b); writeln(‘Введите c‘); Read(c); case c of 1: writeln(‘Сумма=‘, a+b); 2: writeln(‘Разность=‘, a-b); 3: writeln(‘Произведение=‘, a*b); 4: writeln(‘Целая часть от деления=‘, a div b); 5: writeln(‘Остаток от деления=‘, a mod b); else writeln(‘Введен неизвестный номер операции’); end; end.
Задача 4. Написать программу, которая в зависимости от введённого числа выводила бы на экран: если 1, 2, 3, 4, 5 то 'один', если 6, 7, 10, 15 то 'два', если 8 то 'три', если 16, 17, 18, 19, 20, 22, 25 то 'четыре'. Иначе вывести на экран 'ошибка'. program primer; var n : integer; begin write('Введите число: '); readln(n); case n of 1..5: write('один'); 6, 7, 10, 15: write('два'); 8: write('три'); 16..20, 22, 25: write('четыре'); else write('ошибка'); end; end.
Домашнее задание. Составить программу по следующему условию. В некотором учебном заведении действуют следующие правила приема. Абитуриенты сдают три экзамена. Если они набирают не менее 13 баллов, то это дает право поступить на дневное отделение, от 10 до 12 — вечернее, от 8 до 9 — заочное и ниже 8 баллов — отказ в приеме на учебу. Записать программу, которая в зависимости от суммы набранных баллов сообщает абитуриенту его права на поступление.
38494-operator_mnoghestvennogo_vybora_case.ppt
- Количество слайдов: 9