Название: Оператор выбора case
Вид работы: реферат
Рубрика: Информатика
Размер файла: 80.61 Kb
Скачать файл: referat.me-132552.docx
Краткое описание работы: Для программирования разветвлений в алгоритме чаще всего используется условный оператор if…then или if…then…else. Однако если путей выбора много, то запись алгоритма с помощью условного оператора становится сложной.
Оператор выбора case
Оператор выбора case
Для программирования разветвлений в алгоритме чаще всего используется условный оператор if…then или if…then…else.
![]() |
![]() |
Однако если путей выбора много, то запись алгоритма с помощью условного оператора становится сложной.
В таких случаях намного удобнее использовать оператор выбора case.
Этот оператор имеет следующую форму:
case <выражение> of
значение 1: оператор 1;
значение 2: оператор 2;
………………………………………
значение n: оператор n;
else begin
операторы ветви else;
end;
end;
В этой конструкции операторы могут быть составными, <выражение> должно быть порядкового типа, т.е. integer, char, boolean.
Тип <значение> должен совпадать с типом <выражение>, может быть одно или несколько, разделенных запятыми, а также может представлять собой
некоторый диапазон значений.
Вся конструкция должна завершаться ключевым словом end .
Ветвь else вместе с оператором может отсутствовать.
Оператор работает следующим образом:
1. вычисляется значение <выражения>.
2. выполняется оператор, метка которого <значение> совпадает со значе-нием <выражение>.
3. Если ни одно<значение> не совпадает со значением <выражение>, вы-полняется оператор после else.
Примеры:
- Пример использования инструкции case для организации меню (схема)
program menu1;
var
vybor:integer;
begin
writeln('1 - Максимальная температура');
writeln('2 - Минимальная температура');
writeln('3 - Средняя температура');
writeln;
writeln('Введите номер задачи и нажмите <Enter>');
write(' Ваш выбор -> ');
readln(vybor);
case vybor of
1: begin
{ вычисление максимальной температуры }
end;
2: begin
{ вычисление минимальной температуры }
end;
3: begin
{ вычисление средней температуры }
end;
end;
end.
- С клавиатуры вводим номер месяца и компьютер определяет время года
program Prim2;
uses CRT;
var month: integer;
begin
writeln ('Введите номер месяца и нажмите < Enter >');
write('->');
readln(month);
case month of
1,2,12 : writeln(' ЗИМА ');
3,4,5 : writeln(' ВЕСНА ');
6,7,8 : writeln(' ЛЕТО ');
9,10,11: writeln ('ОСЕНЬ');
else writeln ('Число должно быть от 1 до 12');
end;
readln;
end.
3. Написать программу, которая вычисляет стоимость междугороднего телефонного разговора.
Формула: цена минуты * количество минут разговора
(в зависимости от кода города – цена минуты разная)
program Prim3;
uses CRT;
var
kod: integer;
cena: real;
dlit: integer;
summ: real;
begin
writeln ('Вычисление стоимости разговора по телефону');
writeln ('Введите исходные данные:');
write(' код города ->');
readln (Kod);
write ('Длительность разговора (целое количество минут ->');
readln(dlit);
write(' Код города : ');
case kod of
432: Begin
writeln(' Владивосток ');
cena:=2.2;
end;
495: begin
writeln('Moc кв a');
cena:=1;
end;
815: begin
writeln(' Мурманск ');
cena:=1.2;
end;
812: begin
writeln(' Санкт - Петербург ');
cena:=0.00000;
Writeln(' У нас бесплатно ');
end;
846: begin
writeln('Ca м apa');
cena:=1.4;
end;
end;
summ:= cena * dlit;
writeln(' Цена минуты :', cena:6:2,'pyb.');
writeln ('Стоимость разговора:', summ :6:2,' pyb .');
readln;
readln;
end.
4. Написать программу, которая вычисляет дату следующего дня. Рекомендуемый вывод на экран:
Введите цифрами сегодняшнюю дату (число месяц год) -> 31 12 2010
Последний день месяца!
С наступающим Новым годом!
Завтра 1.1.2011
Program Prim4;
Uses Crt; ;
var
day : integer ;
month : integer;
year:integer;
last:boolean;{TRUE, если текущий день последний день месяца }
r:integer; {если год високосный, то остаток от деления year на 4 равен нулю }
begin
writeln;
writeln('Задайте цифрами сегодняшнюю дату');
write('( число месяц год )-> ');
readln(day,month,year);
last:=FALSE;
case month of
1,3,5,7,8,10,12:if day=31
then last:=TRUE;
4,6,9,11: if day=30
then last:=TRUE;
2: if (day=28)
then begin
r:=year mod 4;
if r<>0 then
last:=TRUE;
end;
end;
if last
then begin
writeln('Последний день месяца!');
day:=1;
if month=12
then begin
month:=1;
year:=year + 1;
writeln('С наступающим Новым годом!');
end
else month:=month + 1;
end
else day:=day + 1;
writeln(' Завтра ',day,'.',month,'.',year );
end.
5. Написать программу, которая после введённого с клавиатуры числа (в диапазоне 0т 1 до 99, обозначающего денежную единицу, дописывает слово РУБЛЬ в правильной форме: 12 рублей, 21 рубль и т.д.
Uses Crt;
var
n: integer; { число }
m : integer ; {остаток от деления n на 100 (последние 2 цифры) }
r : integer ; {остаток от деления n на 10 (последняя цифра) }
begin
writeln ('введите целое число(от 1 д o 999) ', 'и нажмите < Enter > ');
write ('-> ');
readln(n);
write ( n , ' ');
{окончание определяется двумя последними цифрами }
if n >100
then m:= n mod 100;
if (m>= 11) and (m<= 14)
then
writeln ( ' рублей ' )
else begin
r:=n mod 10;
case r of
0, 5..9: writeln (' рублей ');
1: writeln (' рубль ');
2..4: writeln (' рубля ');
end;
end;
readln;
end.
Похожие работы
-
Операторы Turbo Pascal 7
Операторы Turbo Pascal Содержание 1. Операторы ввода и вывода информации. 2. Операторы языка ТР.7. 2.1 Составной оператор Begin ... end. 2.2 Условный оператор If.
-
Особенности работы с MS Excel СУБД MS Access программирование на языке Бейсик
Оглавление Графический режим в языке программирования Бейсик 2 Задача 2. Освоение приемов работы с электронными таблицами MS Excel 7 Графический режим в языке программирования Бейсик
-
Програмування лінійних алгоритмів Опис синтаксису мови основні оператори
Лаболаторна робота №1 Тема: Програмування лінійних алгоритмів. Мета:Виробити вміння і навички роботи в середовищі Turbo Pascal. Виконання на ПК найпростіших задач на мові Паскаль.
-
Условные и безусловные операторы в языке программирования Си
Лабораторная работа"++" Цель работы: познакомиться с работой условного оператора и оператора перехоlа. Изучить оператор выбора варианта. Научиться применять их при составлении программ.
-
Оператор условия if else
Лабораторная Работа На тему: " Оператор условия else " 1. Назначение и синтаксис Оператор условия if-else служит для выбора направления работы программы в зависимости от условий, сложившихся в данной точке программы на момент ее выполнения.
-
Метки. Оператор GOTO. Процедура Halt
С.А. Григорьев Операторы в Паскале могут быть помечены. Метки - это идентификаторы, или целые числа от 0 до 9999, они могут записываться перед любым выполняемым оператором и отделяются от него двоеточием. Оператор может иметь любое количество меток. Все метки, использованные в программе, должны быть описаны в разделе описаний с ключевым словом LABEL.
-
Условный оператор. Блок. Оператор выбора
Условный оператор. Блок. Оператор выбора С.А. Григорьев Условный оператор в Паскале записывается в виде: IF логическое выражение THEN оператор/блок [ELSE оператор/блок] логическое выражение - это любое выражение, значение которого имеет тип Boolean, блок - это последовательность операторов, заключенная в логические скобки : BEGIN операторы END; .
-
Способы описания алгоритма Виды операторов
Министерство Образования Республики Беларусь Учреждение Образования «Гомельский государственный университет им. Ф. Скорины» Математический факультет Кафедра ВМ и Программирования
-
Вводный курс в PHP
Синтаксис языка РНР, его переменные и чувствительность их имен к регистру. Гибкость в отношении типов переменных, преобразование типов. Набор основных типов данных при работе с переменными. Методы передача переменных скрипту. Операторы цикла и выбора.
-
Программирование в MATLAB
Кафедра: Информационные технологии ПРОГРАММИРОВАНИЕ В MATLAB Операторы MATLAB Операторы цикла Цикл Синтаксис for count=start:step:final команды MATLAB