Тема: Линейные и ветвящиеся алгоритмы
Материал для чтения: «операторы if и switch в С++»
Задача:
От вас требуется написать программу, которая выводит название дня недели в зависимости от введенного пользователем числа (1-7), либо ошибку, если данные введены неверно.
#include «stdafx.h» #include #include using namespace std; int main()< setlocale(LC_ALL,»Rus»); int dayN; cout>dayN; switch (dayN) < case 1: coutsystem(«pause»); return 0; >
В этой задаче удобно использовать оператор switch, т.к. число дней недели заранее известно, не велико и не будет изменяться.
Просмотр 0 веток ответов
- Для ответа в этой теме необходимо авторизоваться.
Источник: pro-prof.com
Получаем название месяца или дня недели по его номеру в Excel
Вывести название дня недели по его номеру
Формулировка. Вывести название дня недели по его номеру.
Решение. Задача простейшим образом решается с помощью оператора выбора case. Напомним, что этот оператор позволяет организовать ветвления в зависимости от значений некоторой переменной, для каждого из которых можно предусмотреть выполнение различных действий. Причем если значению переменной не соответствует ни один вариант, выполняется else-блок (если он присутствует). Кстати, не стоит забывать, что после перечисления всех вариантов оператора case необходимо написать ключевое слово end (выходит, ключевое слово case является еще и открывающей операторной скобкой).
Для того чтобы воспользоваться оператором case, нам необходимо произвести ввод номера дня недели в некоторую переменную i типа byte и по этому номеру вывести название текущего дня недели. Кстати, благодаря else-блоку в этой программке мы впервые предусмотрим сообщение об ошибке, связанной с некорректно введенным номером, которому не соответствует ни один из дней недели.
Код:
- program DaysOfTheWeek;
- var
- i: byte;
- begin
- readln(i);
- case i of
- 1: writeln(‘Monday’);
- 2: writeln(‘Tuesday’);
- 3: writeln(‘Wednesday’);
- 4: writeln(‘Thursday’);
- 5: writeln(‘Friday’);
- 6: writeln(‘Saturday’);
- 7: writeln(‘Sunday’)
- else writeln(‘This day of the week does not exist!’)
- end
- end.
Кстати, в каждом из вариантов ветвлений может быть помещен составной оператор, но при описании вариантов мы не стали использовать операторные скобки, так как на этот раз они наоборот испортили бы все оформление кода, которое сейчас является достаточно гармоничным.
Источник: pascalzadachi.ru
02.1_Автозаполение (Даты, дни недели, время, числа)
Оператор выбораОператор выборасоставим программу, которая по номеру дня недели выводит на экран его название: Program dni_nedeli; Var n: byte; Begin Readln(n); — презентация
Презентация на тему: » Оператор выбораОператор выборасоставим программу, которая по номеру дня недели выводит на экран его название: Program dni_nedeli; Var n: byte; Begin Readln(n);» — Транскрипт:
2 составим программу, которая по номеру дня недели выводит на экран его название: 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
3 Задание 1 Составьте программу, которая по номеру месяца выводит на экран его название.
4 Решение задания 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.
5 Задание 2 Написать алгоритм нахождения числа дней в месяце, если даны: Номер месяца n – целое число и а, равное 1 для високосного года и равное 0 в противном случае.
6 Решение задания 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.
7 Задание 3 Арифметические действия над числами пронумерованы следующим образом: 1 – сложение, 2 – вычитание, 3 – умножение, 4 – деление. Дан номер действия N (целое число в диапазоне 1-4) и вещественные числа A и B (B не равно 0). Выполнить над числами указанное действие и вывести результат.
8 Решение задания 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.
9 Задание 4 Мастям игральных карт присвоены порядковые номера: 1 – пики, 2 – трефы, 3 – бубны, 4 – червы. Достоинству карт, старших десятки, присвоены номера: 11 – валет, 12 – дама, 13 – король, 14 – туз. Даны два целых числа: N – достоинство и M – масть карты. Вывести название соответствующей карты вида «шестерка бубен», «дама червей», «туз треф» и т. п.
10 Решение задания 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.
11 Задание 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 марта Рыбы
12 Решение задания 5 program zodiak; var mesiac,den:integer; begin write(‘Введите день Вашего рождения -> ‘); readln(den); write(‘Введите месяц, в котором вы родились -> ‘); readln(mesiac); case mesiac of 1: if (den
15 Домашнее задание Дано целое число в диапазоне 100 – 999. Вывести строку – словесное описание данного числа, например: 256 – «двести пятьдесят шесть», 814 – «восемьсот четырнадцать».
Источник: www.myshared.ru