Оператор выбора
составим программу, которая по номеру дня недели выводит на экран его название: Program dni_nedeli; Var n: byte; Begin Readln(n); Case n of 1: writeln(понедельник ); 2: writeln(вторник ); 3: writeln(среда ); 4: writeln(четверг ); 5: writeln(пятница ); 6: writeln(суббота ); 7: writeln(воскресенье); else writeln(дня недели с номером, n,нет); end; end. Пример программы с использованием Case of
Задание 1 Составьте программу, которая по номеру месяца выводит на экран его название.
Решение задания 1 Program mes; Var n: integer; Begin Readln(n); Case n of 1: writeln(' январь '); 2: writeln(' февраль '); 3: writeln(' март '); 4: writeln(' апрель '); 5: writeln(' май '); 6: writeln(' июнь '); 7: writeln(' июль '); 8: writeln(' август '); 9: writeln(' сентябрь '); 10: writeln(' октябрь '); 11: writeln(' ноябрь '); 12: writeln(' декабрь '); else writeln(' месяца с номером ', n, ' нет '); end; end.
Задание 2 Написать алгоритм нахождения числа дней в месяце, если даны: Номер месяца n – целое число и а, равное 1 для високосного года и равное 0 в противном случае.
Решение задания 2 program z1; var a,n:integer; begin writeln('Введите n от 1 до 12 и a - 0 либо 1'); read(n,a); case n of 1,3,5,7,8,10,12: writeln('31 день'); 2: if a=1 then writeln('29 дней') else writeln('28 дней'); 4,6,9,11: writeln('30 дней'); end; end.
Задание 3 Арифметические действия над числами пронумерованы следующим образом: 1 – сложение, 2 – вычитание, 3 – умножение, 4 – деление. Дан номер действия N (целое число в диапазоне 1-4) и вещественные числа A и B (B не равно 0). Выполнить над числами указанное действие и вывести результат.
Решение задания 3 program z2; var a,b,n:integer; begin writeln('Введите n от 1 до 4: 1-"+",2-"-",3-"*",4-"/" '); read(n); writeln('Введите a,b'); read(a,b); case n of 1: writeln('a+b=',a+b); 2: writeln('a-b=',a-b); 3: writeln('a*b=',a*b); 4: writeln('a/b=',a/b); end; end.
Задание 4 Мастям игральных карт присвоены порядковые номера: 1 – пики, 2 – трефы, 3 – бубны, 4 – червы. Достоинству карт, старших десятки, присвоены номера: 11 – валет, 12 – дама, 13 – король, 14 – туз. Даны два целых числа: N – достоинство и M – масть карты. Вывести название соответствующей карты вида «шестерка бубен», «дама червей», «туз треф» и т. п.
Решение задания 4 var a,b:integer; begin writeln('Введите масть карты от 1 до 4'); read(a); Writeln('Введите достоинство карты от 6 до 14'); read(b); case b of 6: write('шестерка '); 7: write('семерка '); 8: write('восьмерка '); 9: write('девятка '); 10: write('десятка '); 11: write('валет '); 12: write('дама '); 13: write('король ); 14: write('туз '); end; case a of 1: writeln('пик'); 2: writeln('крести'); 3: writeln('бубен'); 4: writeln('черви'); end; end.
Задание 5 По введенному Вами дню и месяцу рождения вывести на экран сообщение о Вашем знаке зодиака. Овен 21 марта - 20 апреля Овен Телец 21 апреля - 21 мая Телец Близнецы 21 мая - 20 июня Близнецы Рак 21 июня - 22 июля Рак Лев 23 июля - 22 августа Лев Дева 23 августа - 23 сентября Дева Весы 24 сентября - 23 октября Весы Скорпион 24 октября - 21 ноября Скорпион Стрелец 22 ноября - 21 декабря Стрелец Козерог 22 декабря - 19 января Козерог Водолей 20 января - 18 февраля Водолей Рыбы 19 февраля - 20 марта Рыбы
Решение задания 5 program zodiak; var mesiac,den:integer; begin write('Введите день Вашего рождения -> '); readln(den); write('Введите месяц, в котором вы родились -> '); readln(mesiac); case mesiac of 1: if (den
4: if (den
11: if (den
Домашнее задание Дано целое число в диапазоне 100 – 999. Вывести строку – словесное описание данного числа, например: 256 – «двести пятьдесят шесть», 814 – «восемьсот четырнадцать».