Referat.me

Название: Оператор выбора 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