Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
sancho1996
0 / 0 / 0
Регистрация: 24.06.2013
Сообщений: 55
#1

Пользователь вводит текущее время в формате: часы:минута и если 0:00 - 5:59 программа пишет Night, если 6:00-11:59 morning - C++

24.06.2013, 14:57. Просмотров 597. Ответов 5
Метки нет (Все метки)

Помогите написать код для этой задачи(на С++):

Пользователь вводит текущее время в формате: часы:минута и если 0:00 - 5:59 программа пишет Night, если 6:00-11:59 morning, если от 12:00-17-59 day, если от 18:00-23:59 evening + защита от "дурака".
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.06.2013, 14:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Пользователь вводит текущее время в формате: часы:минута и если 0:00 - 5:59 программа пишет Night, если 6:00-11:59 morning (C++):

Пользователь вводит 10 чисел программа должна выдать 2 максимальных(берём от 1 до 10,если выпадает 2 10,то программа должна выдать 2 10,а не 10,9) - C++
#include <iostream> using namespace std; int main () { int number, largest_1, largest_2, counter = 1; cout«"Vvedite 1oe...

Как ведет себя cin, если пользователь вводит некорректные данные? - C++
Читаю C++ Primer Plus by Stephen Prata. В седьмой главе у него есть следующий пример. // lotto.cpp -- probability of winning ...

Пользователь вводит время в Днях,часах,минутах и секундах,программа переводит все в секунды - C++
Пользователь вводит время в Днях,часах,минутах и секундах,программа переводит все в секунды

Описать структуру «время» (часы, минуты, секунды). Определить функцию «следующая минута» - C++
Привет ребят, вот такая задачка, голову ломаю ничего понять не могу: Описать структуру «время» (часы, минуты, секунды). Определить...

Вывести текущее время в формате ЧЧ:ММ:СС - C++
я хочу из time(0), получить время (ЧЧ:ММ:СС). что я делаю не так? или есть более лёгкий способ его получения? вот мой код, но он...

Как получить текущее время в формате чч:мм:сс - C++
Подскажите, есть необходимость получить текущее время в формате чч:мм:сс, как это реализовать?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
24.06.2013, 15:09 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <limits>
 
int main()
{
   unsigned h = 0, m = 0;
   char dummy = 0;
   while (!(std::cin >> h >> dummy >> m) || h > 23
   || dummy != ':' || m > 60)
   {
      std::cout << "Invalid time. Try again" << std::endl;
      std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
      std::cin.clear();
   }
   if (h < 6)
   {
      std::cout << "night" << std::endl;
   }
   else if (h >= 6 && h < 12)
   {
      std::cout << "morning" << std::endl;
   }
   else if (h >= 12 && h < 18)
   {
      std::cout << "day" << std::endl;
   }
   else if (h >= 18)
   {
      std::cout << "evening" << std::endl;
   }
}
sancho1996
0 / 0 / 0
Регистрация: 24.06.2013
Сообщений: 55
24.06.2013, 15:26  [ТС] #3
@ForEveR, Спасибо бро, но нету попроще? Можно ли эту задачу решить только используя оператор условия if?
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
24.06.2013, 15:30 #4
@sancho1996, Можно, если валидация подразумевает выход из программы при ошибке ввода. Просто заменить while на if
sancho1996
0 / 0 / 0
Регистрация: 24.06.2013
Сообщений: 55
24.06.2013, 15:39  [ТС] #5
Цитата Сообщение от ForEveR Посмотреть сообщение
@sancho1996, Можно, если валидация подразумевает выход из программы при ошибке ввода. Просто заменить while на if
просто понимаешь, мне нужен более простой способ, ну как сказать - для чайника, примитивный.

А так большое спасибо.

Добавлено через 6 минут
@ForEveR, должно быть по проще: Время вводится с клавиатуры часы записываются в одну переменную, минуты в другую. Разделителем является пробел, то есть "13 55" и всё это надо сделать с if
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
24.06.2013, 15:42 #6
@sancho1996, Это и так делается. Это самый элементарный способ. Единственное, вместо разделителя используется :
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.06.2013, 15:42
Привет! Вот еще темы с ответами:

пользователь вводит 3 произвольных числа. нужно проверить, составляют ли они геометрическую прогрессию и, если составляют, вывести на экран первые 10 - C++
помогите, пожалуйста. пользователь вводит 3 произвольных числа. нужно проверить, составляют ли они геометрическую прогрессию и, если...

Пользователь вводит 5 чисел, если все они положительные и чётные, то программа выводит YES - Visual C++
2. Пользователь вводит 5 чисел, если все они положительные и чётные, то программа выводит YES, иначе она выводит NO.

Как обработать ситуацию, если пользователь вводит не нужный пункт меню? - C#
Вот мой код: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace...

Пользователь вводит любые числа с клааиатуры,признак окончания 0. Проверить если в данной последовательности 5 - Pascal ABC
Пользователь вводит любые числа с клавиатуры признак окончания 0, Проверить,если в данной последовательности число 5 если да то заменить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
24.06.2013, 15:42
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru