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

Реализовать функцию вычисления количества дней между двумя датами. - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
St93
0 / 0 / 0
Регистрация: 08.07.2012
Сообщений: 13
05.12.2012, 19:31     Реализовать функцию вычисления количества дней между двумя датами. #1
Помогите пожалуйста реализовать функцию вычисления количества дней между двумя датами.
мои наброски

C++
1
2
3
4
5
6
7
8
9
10
         int d,m,y,r;
    cout<<"vvedite 1 datu \n";
    cin>>d>>m>>y;
    cout<<"vvedite 2 datu \n";
    cin>>day>>month>>year;
    int n[12]={31,28,31,30,31,30,31,31,30,31,30,31};
    for (int q=0; q<12; q++ )
        r=n[q-1]+day;
    y=r-d;
    cout<<y;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.12.2012, 19:31     Реализовать функцию вычисления количества дней между двумя датами.
Посмотрите здесь:

C++ Программа для вычисления количества дней между двумя датами
C++, вычисление количества дней между датами C++
Число дней недели между датами C++
Рассчитать количество дней, прошедших между двумя датами C++
C++ Определить число дней между двумя известными датами. Если вторая дата предшествует первой, то результат отрицательный
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
no_wearines
 Аватар для no_wearines
52 / 48 / 2
Регистрация: 01.01.2012
Сообщений: 322
06.12.2012, 06:54     Реализовать функцию вычисления количества дней между двумя датами. #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
#include <iostream>
#include <numeric>
#include <conio.h>
using namespace std;
 
int main()
{
int array_1[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int d_1, d_2, m_1, m_2, y_1, y_2, i_r = 0, i_n = accumulate(array_1, (array_1 + 12), 0, plus<int>());
 
cin>>d_1>>m_1>>y_1>>d_2>>m_2>>y_2;
for(; y_2 > (y_1 + 1); --y_2)
i_r += i_n;
 
for(int i_1 = (m_1 + 1); i_1 <= 12; ++i_1)
i_r += array_1[(i_1 - 1)];
 
for(int i_1 = (m_2 - 1); i_1 > 0; --i_1)
i_r += array_1[(i_1 - 1)];
 
i_r += ((array_1[m_1] - d_1) + d_2);
 
cout<<i_r<<endl<<i_n;
 
getch();
 
return 0;
}
kiruhka
1 / 1 / 0
Регистрация: 08.09.2009
Сообщений: 103
06.12.2012, 08:09     Реализовать функцию вычисления количества дней между двумя датами. #3
ну вот как-то так, но это если год одинаковый, если разный пока не придумала, сама только осваиваю
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
#include <vcl.h>
#include <iostream.h>
#include <conio.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
int d,m,y,d1,m1,y1,r = 0;
int n[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
        cout<<"Vvedite 1 daty"<<endl;
        cin>>d>>m>>y;
        cout<<"Vvedite 2 daty"<<endl;
        cin>>d1>>m1>>y1;
        if(y == y1)
          {
            for(int i=m;i<m1-1;i++)
            {
            r = r + n[i];
            }
            r = n[m-1]-d + (n[m1-1]-(n[m1-1]-d1))+ r;
            cout<<r;
          }
        getch();
        return 0;
}
даты вводятся через пробел
St93
0 / 0 / 0
Регистрация: 08.07.2012
Сообщений: 13
06.12.2012, 15:48  [ТС]     Реализовать функцию вычисления количества дней между двумя датами. #4
Огромное спасибо тем кто мне помог. дальше я сам попробую доделать)))
Тема закрыта.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
06.12.2012, 15:52     Реализовать функцию вычисления количества дней между двумя датами. #5
Цитата Сообщение от St93 Посмотреть сообщение
Тема закрыта.
сказал, как отрезал!
Вот, может поможет.
Yandex
Объявления
06.12.2012, 15:52     Реализовать функцию вычисления количества дней между двумя датами.
Ответ Создать тему

Метки
вычисления, датами, двумя, дней, количества, между, реализовать, функцию
Опции темы

Текущее время: 15:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru