Цель. Научиться использовать оператор выбора одной из нескольких альтернатив (switch-case). Рассмотреть использование оператора switch-case в комбинации с целыми числами и символами, создание консольного меню.
ПРИМЕРЫ РЕШЕНИЯ ЗАДАЧ
Задача 1. Введите номер дня недели и выведите его название.
#include <iostream>
using namespace std;
int main() {
cout << "Введите номер дня:\n";
int day;
cin >> day;
switch (day) {
case 1: cout << "Понедельник"; break;
case 2: cout << "Вторник"; break;
case 3: cout << "Среда"; break;
case 4: cout << "Четверг"; break;
case 5: cout << "Пятница"; break;
case 6: cout << "Суббота"; break;
case 7: cout << "Воскресенье"; break;
default: cout << "Такого дня нет"; break;
}
system("pause");
return 0;
}
Задача 2. Напишите программу, которая по выбору пользователя отображает на экране квадрат, треугольник или крестик из звездочек.
#include <iostream>
using namespace std;
int main() {
cout << "Какую фигуру нарисовать?\n";
cout << "1 - квадрат\n";
cout << "2 - крестик\n";
cout << "3 - треугольник\n";
int choice;
cin >> choice;
switch (choice) {
case 1:
cout << "***\n* *\n***\n"; break;
case 2:
cout << " * \n***\n * \n"; break;
case 3:
cout << " * \n * * \n*****\n"; break;
default:
cout << "Неправильный выбор\n";
}
system("pause");
return 0;
}
Задача 3. Введите символ операции и выведите его название.
#include <iostream>
using namespace std;
int main() {
setlocale(LC_ALL, "Russian");
char operation;
cout << "Введите операцию:\n";
cin >> operation;
switch (operation) {
case '+': cout << "Плюс"; break;
case '-': cout << "Минус"; break;
case '*': cout << "Умножить"; break;
case '/': cout << "Поделить"; break;
case '%': cout << "Остаток (mod)"; break;
default: cout << "Ошибка"; break;
}
system("pause");
return 0;
}
ЗАДАЧИ
1. Создайте меню из трех пунктов: приветствие, прощание и выход.
2. В некоторых детских упражнениях для запоминания алфавита каждой букве поставлено в соответствие некоторое слово. Введите букву русского алфавита и выведите слово, начинающееся с этой буквы (достаточно 10 букв).
3. На клавиатуре мобильного телефона цифрам соответствуют наборы букв. Введите цифру и сообщите, какие русские буквы ей соответствуют.
4. На клавиатуре мобильного телефона цифрам соответствуют наборы букв. Введите цифру и сообщите, соответствующие ей латинские буквы.
5. На клавиатуре мобильного телефона цифрам соответствуют наборы букв. Введите цифру и сообщите, какие символы ей соответствуют.
6. При изучении чисел детьми им называют число и просят сказать любую фразу, содержащее это число. Напишите программу, которая принимает число от 1 до 7 и выводит фразу, содержащее это число.
7. Введите букву и выведите имя известного актера, начинающееся с этой буквы (достаточно 10 букв).
8. Введите букву и выведите название фильма, начинающееся с этой буквы (достаточно 10 букв).
9. Планеты Солнечной системы расположены в следующем порядке: Меркурий, Венера, Земля, Марс, Юпитер, Сатурн, Уран, Нептун. Введите номер и сообщите, какая по счету планета ему соответствует.
10. Введите номер месяца и сообщите, к какому времени года он относится.
11. Месяцы года делятся на кварталы по три месяца. Введите номер месяца и сообщите, к какому кварталу он относится.
12. Введите год и сообщите соответствующее ему животное согласно Восточному календарю.
13. Введите цифру от 0 до 9 и сообщите название этой цифры.
14. Введите номер буквы латинского алфавита и выведите эту букву.
15. Введите номер буквы русского алфавита и выведите эту букву.
16. В классической расстановке баскетболистов на площадке позиции игроков занумерованы числами от 1 до 5: 1 - разыгрывающий защитник, 2 – атакующий защитник, 3 – легкий форвард, 4 – тяжелый форвард и 5 – центровой. Введите номер позиции и сообщите ее название.
17. Введите оценку от 1 до 5 и выведите ее словесный эквивалент: отлично, хорошо, удовлетворительно, неудовлетворительно или кол.
18. Введите номер дня недели и выведите его название.
19. Введите номер месяца в году и выведите его название.
20. Введите номер музыкальной ноты от 1 до 7 и выведите ее название.
21. Введите номер месяца в году и сообщите, сколько в нем дней.
22. Напишите программу, которая по выбору пользователя отображает квадрат, треугольник или крест из звездочек.
23. Введите категорию водительских прав и сообщите, какими транспортными средствами может управлять водитель с такими правами.
24. Согласно общепринятой системе обозначений музыкальные ноты обозначаются латинскими буквами от C (нота «до») до H (нота «си»). Введите символ и сообщите соответствующую ему ноту.
25. Напишите программу, которая принимает символ, представляющий собой знак пунктуации (рассмотрите минимум 5 знаков), и сообщает название этого знака.
26. Напишите программу, которая принимает с клавиатуры символ, представляющий собой знак арифметической операции, и сообщает название этой операции.
27. Введите символ, представляющий собой правую или левую скобку (фигурную, круглую или квадратную), и сообщает название этой скобки. Например, если введен символ «[», то программа должна сообщить «левая квадратная скобка».
28. Введите латинскую букву и выведите ее номер в алфавите.
29. Введите русскую букву и выведите ее номер в алфавите.
30. На клавиатуре компьютера каждой цифре соответствует какой-то символ. Введите цифру и выведите соответствующий ей символ.