Нужна помощь по програмированнию на C++. Прошу без if.Имя входного файла стандартный вводИмя выходного файла стандартный выводОграничение по времени 2 секундыОграничение по памяти 64 мегабайтаПо правилам этикета при приветствии «Доброе утро» говорят только с 8:00 до 10:59, «Добрый день» — с 11:00 до 17:59, «Добрый вечер» — с 18:00 и до 22:59.Вам дан номер текущего часа h. Требуется вывести1, если нужно сказать «Доброе утро»;2, если нужно сказать «Добрый день»;3, если нужно сказать «Добрый вечер».Формат входных данныхС клавиатуры вводится целое число h (8≤h≤22).Формат выходных данныхТребуется вывести 1, 2 или 3, в зависимости от времени суток.Примервход. данные выход. данные9----------------------------112---------------------------220--------------------------3

2 Сен 2019 в 16:41
307 +1
0
Ответы
1
#include <iostream>
int main() {
int h;
std::cin >> h;
if (h >= 8 && h <= 10) {
std::cout << 1;
} else if (h >= 11 && h <= 17) {
std::cout << 2;
} else {
std::cout << 3;
}
return 0;
}

Приведенный выше код использует конструкцию if-else для решения данной задачи. Если вы не хотите использовать if, то можно реализовать это с помощью оператора switch:

#include <iostream>
int main() {
int h;
std::cin >> h;
switch(h) {
case 8:
case 9:
case 10:
std::cout << 1;
break;
case 11:
case 12:
case 13:
case 14:
case 15:
case 16:
case 17:
std::cout << 2;
break;
default:
std::cout << 3;
break;
}
return 0;
}

Этот код решает задачу без использования оператора if, но с использованием оператора switch.

20 Апр в 05:18
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 95 117 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир