Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
46 / 33 / 14
Регистрация: 12.09.2013
Сообщений: 167
1

Что делать, если значение сегодняшнего дня(месяца) меньше значения дня(месяца) введных пользователем?

14.09.2013, 19:21. Показов 1160. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <ctime>
using namespace std;
 
int main()
{
    time_t t = time(NULL); // äëÿ âû÷èñëåíèÿ ñåãîäíÿøíåãî äíÿ, ìåñÿöà è ãîäà.
    tm *t1;
    t1 = localtime(&t);
 
    int day, month, year;                     // äåíü ðîæäåíèÿ
    int bDay, bMonth, bYear;                  // äíåé, ìåñÿöåâ è ëåò ñî äíÿ ðîæäåíèÿ
    cin >> day >> month >> year;             // пользователь вводит дня, месяца и года своего рождения
    bDay = (t1->tm_mday) - day;                  //количество дней со дня рождения
    bMonth = (t1->tm_mon + 1) - month;          // месяцев
    bYear = (t1->tm_year + 1900) - year;             // лет
    cout << bDay << "." << bMonth << "." << bYear;
    system ("pause>>void");
    return 0;
}
Что делать, если значение сегодняшнего дня(месяца) меньше значения дня(месяца) введных пользователем?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.09.2013, 19:21
Ответы с готовыми решениями:

По заданному номеру дня месяца, определить и напечатать название следующего за ним дня
Нужно написать программу. На лекции не объяснили как. Хочу спросить у профи. По заданному ...

Дата следующего дня, последний день месяца и сколько дней осталось до конца месяца
написать программу которая вычисляет дату следующего дня определяет последний день месяца и сколько...

По номеру дня месяца вывести на экран день недели, если первое число пришлось на субботу
По номеру дня месяца вывести на экран день недели, если первое число пришлось на субботу. ...

Вывод дня, месяца, года
Помогите пожалуйста решить данную задачу, каким способом её лучше реализовать ? Условие:...

8
10 / 11 / 2
Регистрация: 18.02.2012
Сообщений: 140
14.09.2013, 19:32 2
Цитата Сообщение от naHuka Посмотреть сообщение
Что делать, если значение сегодняшнего дня(месяца) меньше значения дня(месяца) введных пользователем?
Что хочешь, то и делай.
В чем суть проблемы?
0
46 / 33 / 14
Регистрация: 12.09.2013
Сообщений: 167
14.09.2013, 19:39  [ТС] 3
ПРоблема вот в чем:
скажем, пользователь ввел 15 в графе дней
тогда 14-15 = -1
он мне и выведет -1
а мне нужно, что бы результатом работы программы было количество дней месяцев и лет со дня рождения, и никак не устраивает результат "-1"
0
347 / 292 / 37
Регистрация: 23.03.2012
Сообщений: 838
14.09.2013, 19:41 4
Цитата Сообщение от naHuka Посмотреть сообщение
ПРоблема вот в чем:
скажем, пользователь ввел 15 в графе дней
тогда 14-15 = -1
он мне и выведет -1
а мне нужно, что бы результатом работы программы было количество дней месяцев и лет со дня рождения, и никак не устраивает результат "-1"
Ну так и выведи ему вместо отрицательного числа, что тебя не устраивает.
0
46 / 33 / 14
Регистрация: 12.09.2013
Сообщений: 167
14.09.2013, 19:53  [ТС] 5
Цитата Сообщение от Nekto Посмотреть сообщение
Ну так и выведи ему вместо отрицательного числа, что тебя не устраивает.
видимо я неправильно поставил вопрос вначале
как мне это сделать?
0
347 / 292 / 37
Регистрация: 23.03.2012
Сообщений: 838
14.09.2013, 19:57 6
Цитата Сообщение от naHuka Посмотреть сообщение
видимо я неправильно поставил вопрос вначале
как мне это сделать?
C++
1
2
if (переменная<0)
  std::cout << " Wrong day " << std::endl;
0
46 / 33 / 14
Регистрация: 12.09.2013
Сообщений: 167
14.09.2013, 20:02  [ТС] 7
Цитата Сообщение от Nekto Посмотреть сообщение
C++
1
2
if (переменная<0)
  std::cout << " Wrong day " << std::endl;
эм..
как вывести сообщение об ошибке, я знаю
0
60 / 60 / 7
Регистрация: 14.09.2013
Сообщений: 145
14.09.2013, 21:31 8
Кажется я понял твою проблему. Тебе необходимо найти количество дней между двумя датами. И вопрос в том, что делать, если человек введёт месяц и день, которые будут позже, чем сегодняшняя дата. То есть допустим сегодня 14 сентября 2013 , а пользователь вводит 15 ноября допустим 1972 года. В результате по твоему алгоритму получается неправильный результат. Итак ответ на главный вопрос - что делать? Изменить алгоритм. Посмотри, например, здесьОпределить число дней между двумя известными датами. Если вторая дата предшествует первой, то результат отрицательный. Там вычисляется количество дней между двумя датами. И пользуйся поиском по форуму - много найдёшь.
0
46 / 33 / 14
Регистрация: 12.09.2013
Сообщений: 167
16.09.2013, 12:40  [ТС] 9
огромное спасибо
0
16.09.2013, 12:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.09.2013, 12:40
Помогаю со студенческими работами здесь

Определить номер дня недели для K-го дня года, если известно, что в этом году 1 января было вторником.
Задача на С++ Вот условие: Дни недели пронумерованы следующим образом: 1 — понедельник, 2 —...

Вывести номер дня и месяца, предшествующее указанной дате
Даны два целых числа: D (день) и M (месяц), определяющие правильную дату невисокосного года....

Вводится номер месяца М и дня Д. Определить день недели с датой М и Д
Вводится номер месяца М и дня Д. Определить день недели с датой М и Д, считая, что год начинается...

Составить программу, которая в зависимости от порядкового номера дня месяца (1,2,.,12) выводит на экран врем
Нужна помощь в разборе задачи на С++. Начал изучать язык и столкнулся с проблемой того, что не...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru