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

Сложение дат - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Загвоздка в значении переменной http://www.cyberforum.ru/cpp-beginners/thread749661.html
int i = 5; i = ++i + ++i; Чему будет равно i? Помню, в Страуструпе что-то похожее было, но не вспомню.
C++ Однонаправленный список (сохраняет только первый и последний элемент) class Lancuch { public: char cos; Lancuch * nastepny; }; Lancuch ** elem; http://www.cyberforum.ru/cpp-beginners/thread749654.html
C++ Работа с дисководом
Как работать с дисководом в с++? К примеру, функция, проверяющая, есть ли диск в дисководе, или, к примеру, открывающая дисковод. Какую для этого библиотеку надо использовать? Если у кого-нибудь есть мануал на эту тему, буду премного благодарен, если вы мне дадите на него ссылку. :)
C++ int\ volatile int \ const int
Товарищи, паника! Имеется код: int a = 5; std::cout << "Init value a: " << a << "\n"; int *p; p = (int*) &a; *p = 0; std::cout << "*p = " << *p << "\n"; std::cout << "New value a: " << a << "\n"; std::cout << "p = " << p << "\n";
C++ Динамическое увеличение размера динамического массива http://www.cyberforum.ru/cpp-beginners/thread749627.html
Никак не могу понять как это исправить.. Помогите, пожалуйста, разобраться в чём дело: struct myPoint { int x; int y; }; int qbordlength = 0; myPoint* qbord = new myPoint;
C++ Дан массив целых чисел из 10 элементов.Все элементы кратные 10 заменить 0;Все нечетные элементы удвоить, а четные уменьшить на 2; Дан массив целых чисел из 50 элементов. Все элементы кратные 10 заменить 0; Все нечетные элементы удвоить, а четные уменьшить на 2; Как правильно заменить кратные 10 на 0? Заранее спасибо. Вот мое решение: const int size=10; int ar={22,56,96,40,13,65,78,30,58,45}; подробнее

Показать сообщение отдельно
korsarqa
7 / 7 / 0
Регистрация: 06.12.2011
Сообщений: 170

Сложение дат - C++

29.12.2012, 18:50. Просмотров 986. Ответов 4
Метки (Все метки)

Вообщем при складывании дат имеется кусочек:

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
32
33
34
35
36
37
38
39
40
41
day=day+d1;
while (month==1 && day>31 || month==3 && day>31 || month==5 && day>31 || month==7 && day>31 || month==8 && day>31 || month==10 && day>31 || month==12 && day>31 )
        {
            month=month+1;
            day=day-31;
            while (month>12)
            {
                year=year+1;
                month=month-12;
            }
        }
        while (month==4 && day>30 || month==6 && day>30 || month==9 && day>30 || month==11 && day>30)
        {
            month=month+1;
            day=day-30;
            while (month>12)
            {
                year=year+1;
                month=month-12;
            }
        }
        while (month==2 && vysok==1 && day>29)
        {
            month=month+1;
            day=day-29;
            while (month>12)
            {
                year=year+1;
                month=month-12;
            }
        }
        while (month==2 && vysok==0 && day>28)
        {
            month=month+1;
            day=day-28;
            while (month>12)
            {
                year=year+1;
                month=month-12;
            }
        }
Недостаток моей программы - при вводе большого количества дней d1 -выводится также большое количество дней.
Т.е. имеется в начале месяц июль (7) - мы попадаем в первый цикл. Далее при выходе получается месяц номер 8 - опять по этому же циклу проходим. Далее идет номер месяца - 9 - выходим из первого цикла и идем во второй. Далее получается 10 месяц и мы выходим из второго цикла. Хотя по идее он должен опять идти в первый цикл. Именно это я не могу реализовать.

Помогите пожалуйста.

Идея с созданием 12 циклов, где в каждом будет по 1 условию отпадает, так как если число дней очень большое мы можем проходить через один и тот же месяц несколько раз
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru