Реферат

Реферат Оператор выбора case

Работа добавлена на сайт bukvasha.net: 2015-10-28

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 21.9.2024



Оператор выбора 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.
Примеры:
  1. Пример использования инструкции 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.

  1. С клавиатуры вводим номер месяца и компьютер определяет время года



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.



1. Реферат Проблемы правового противодействия экстремистским проявлениям в деятельности религиозных объедин
2. Реферат на тему The Tempest 2
3. Реферат на тему The Consumer Price Index Essay Research Paper
4. Реферат на тему Темперамент и личность
5. Реферат на тему Литература и искусство Древней Греции и Древнего Рима 2
6. Реферат Серебряный век в русской культуре
7. Реферат История токарного станка
8. Реферат на тему The Good Life(Comparison Of Kant And Nietzsche)
9. Реферат на тему Определение примесей в технических целлюлозах
10. Реферат на тему Peace In The Middle East Essay Research