Реферат по предмету "Информатика"


Оператор выбора 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.



Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Hellenism On The Silk Road Essay Research
Реферат Сравнительный анализ алгоритмов построения выпуклой оболочки на плоскости
Реферат Технология выгонки новых сортов тюльпанов с использованием различных
Реферат Mr Essay Research Paper Buddhism over JainismHinduism
Реферат Анализ доходности коммерческого банка от операций с ценными бумагами
Реферат До и после родовая гимнастика для женщин. Гимнастика для ребенка первого года жизни
Реферат Методология и методы экономической теории 2
Реферат Расчет семейного бюджета на полугодие
Реферат Методы поддержания организационной культуры
Реферат История административного деления Белоруссии
Реферат Odysseus Favored By Gods Essay Research Paper
Реферат CaliforniaBerkeley Essay Research Paper During the 60s
Реферат Исполнительная Директория
Реферат Формирование игровой деятельности дошкольника как психолого-педагогическая проблема
Реферат Професійно-особисті якості юриста