Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
5 / 3 / 2
Регистрация: 11.11.2013
Сообщений: 349

Выводим следующий день

21.03.2014, 17:37. Показов 2267. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужна помощь...
Нужно, чтобы когда вводишь день, месяц, год - то день отображался следующий. А также, чтобы когда 31.12.2014 число отображалась - 1.1.2015.
Когда я введу 30 день, то он мне тупо скажет, что день 32.
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
42
43
44
45
46
47
48
49
50
51
52
#include<stdio.h>
#include<conio.h>
#include<math.h>
 
main()
{
 int day,month,year;
 printf("День:"); scanf("%d",&day);
 printf("Месяц:"); scanf("%d",&month);
 printf("Год:"); scanf("%d",&year);
 int days=0;
 day++;
 if (day==30)
 {
  month++;
  if (month==1)
  {
   day=1;
   month=1;
   year++;
  }
  else
  {
  switch(month)
   {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
    days+=31; break;
    case 2:
    {
     if (year%4==0)
     {
      days+=29;
     }
     else
     {
      days+=28; break;
     }
    }
    default:days+=30; break;
   }
  }
 days+=(day-1);
 }
 printf("Следующий день %d.%d.%d",day,month,year);
 getch();                    
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.03.2014, 17:37
Ответы с готовыми решениями:

Циклические алгоритмы,Начав тренироваться, лыжник в первый день пробежал n км. Каждый следующий день
Начав тренироваться, лыжник в первый день пробежал n км. Каждый следующий день он увеличивал пробег на 10% от пробега предыдущего дня. В...

Циклические алгоритмы,Начав тренироваться, лыжник в первый день пробежал n км. Каждый следующий день он увелич
Начав тренироваться, лыжник в первый день пробежал n км. Каждый следующий день он увеличивал пробег на 10% от пробега предыдущего дня. В...

Следующий день
Given three natural numbers a, b, c which represent the day, month and year of some date. For example: 1, 4, 1991 represents 1st April...

12
 Аватар для saden
184 / 168 / 53
Регистрация: 27.01.2013
Сообщений: 788
21.03.2014, 18:18
что-то вообще с логикой не то...
0
5 / 3 / 2
Регистрация: 11.11.2013
Сообщений: 349
21.03.2014, 18:22  [ТС]
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
42
43
44
45
46
47
48
49
50
51
52
#include<stdio.h>
#include<conio.h>
#include<math.h>
 
main()
{
 int day,month,year;
 printf("День:"); scanf("%d",&day);
 printf("Месяц:"); scanf("%d",&month);
 printf("Го:"); scanf("%d",&year);
 int days=0;
 day--;
 if (day==0)
 {
  month--;
  if (month==0)
  {
   day=31;
   month=12;
   year--;
  }
  else
  {
  switch(month)
   {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
    days+=31; break;
    case 2:
    {
     if (year%4==0)
     {
      days+=29;
     }
     else
     {
      days+=28; break;
     }
    }
    default:days+=30; break;
   }
  }
 days+=(day-1);
 }
 printf("Предыдущий день %d.%d.%d",day,month,year);
 getch();                    
}
Переделывал я криво. Вот оригинал. Выводит предыдущий день.
0
 Аватар для saden
184 / 168 / 53
Регистрация: 27.01.2013
Сообщений: 788
21.03.2014, 18:41
C++
1
2
3
day++;
if((month==1 || month==3...) && day==32) {day=0; month++;}
...
0
5 / 3 / 2
Регистрация: 11.11.2013
Сообщений: 349
21.03.2014, 19:07  [ТС]
Не получается запустить. Либо я криво редактирую...
0
 Аватар для saden
184 / 168 / 53
Регистрация: 27.01.2013
Сообщений: 788
21.03.2014, 19:35
кидай код, будем посмотреть...
0
5 / 3 / 2
Регистрация: 11.11.2013
Сообщений: 349
21.03.2014, 20:50  [ТС]
Пошла...
C++
1
2
3
4
5
6
...
 day++;
 if((month==1 || month==3,5,4,7,8,10,11) && day==32)
 {day=1; month=1; year++;}
 else
...
Щас так...
0
 Аватар для saden
184 / 168 / 53
Регистрация: 27.01.2013
Сообщений: 788
21.03.2014, 20:57
не-не
C++
1
2
3
4
if(...)
{ month++;
  if(month==13) year++;
}
Добавлено через 2 минуты
и дальше
C++
1
2
if(month==2 && day==29)...
if(month==4||month==6 && day==31) month++;
1
5 / 3 / 2
Регистрация: 11.11.2013
Сообщений: 349
21.03.2014, 21:38  [ТС]
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
#include<stdio.h>
#include<conio.h>
#include<math.h>
 
main()
{
 int day,month,year;
 printf("День: "); scanf("%d",&day);
 printf("Месяц: "); scanf("%d",&month);
 printf("Год: "); scanf("%d",&year);
 int days=0;
 day++;
 if ((month==1,3,5,7,8,10,12) && day==32)
 {
     month++; day=1;
 if (month==13) 
 {
        month=1; year++;
 }
 }
 if ((month==2) && day==29)
 {
     month++; day=1;
 }      
 if((month==4,6,9,11) && day==31)
 {
     month++; day=1;
 }
 days+=(day-1);
 printf("Следующий день %d.%d.%d",day,month,year);
 getch();                    
}
Тут получается не високосный год
0
 Аватар для saden
184 / 168 / 53
Регистрация: 27.01.2013
Сообщений: 788
21.03.2014, 21:41
с первого взгляда - нормально..

есть проблемы?
0
5 / 3 / 2
Регистрация: 11.11.2013
Сообщений: 349
21.03.2014, 21:53  [ТС]
Не, вроде нет.
0
 Аватар для saden
184 / 168 / 53
Регистрация: 27.01.2013
Сообщений: 788
21.03.2014, 21:55
детальнее...
в чем бока?
0
5 / 3 / 2
Регистрация: 11.11.2013
Сообщений: 349
21.03.2014, 21:57  [ТС]
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
42
#include<stdio.h>
#include<conio.h>
#include<math.h>
 
main()
{
 int day,month,year;
 printf("Äåíü: "); scanf("%d",&day);
 printf("Ìåñÿö: "); scanf("%d",&month);
 printf("Ãîä: "); scanf("%d",&year);
 int days=0;
 day++;
 if ((month==1,3,5,7,8,10,12) && day==32)
 {
     month++; day=1;
 if (month==13) 
 {
        month=1; year++;
 }
 }
 if (year%4==0)
 {
        if ((month==2) && day==30)
        {
            month++; day=1;
      }
 }    
 else
 {
     if ((month==2) && day==29)
 {
     month++; day=1;
 }
 }
 if((month==4,6,9,11) && day==31)
 {
     month++; day=1;
 }
 days+=(day-1);
 printf("Ñëåäóþùèé äåíü %d.%d.%d",day,month,year);
 getch();                    
}
Сделал, чтобы февралю в не високосный день 28 было, а в високосный 29 дней.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.03.2014, 21:57
Помогаю со студенческими работами здесь

Логические выражения - программа на следующий день просто перестала работать
Помогите пожалуйста разобраться. Такая ситуация: вначале написал не полную программу( не все здания), откомпелировал, она работала. На...

Написать программу, которая будет показывать следующий день на определенным формате
помагите пожалуста написать программу которое будет показывать следующий день на определенным формате например 2 01.12.2009 GENERAL...

Спортсмен тренируется, и в 1 день пробежал 2км. В каждый следующий день он пробегает на 20% больше
Спортсмен тренируется, и в 1 день пробежал 2км. В каждый следующий день он пробегает на 20% больше, чем в предыдущий день. Найти: 1)...

Спортсмен в первый день пробежал 10 км. Каждый следующий день он увеличивал дневную норму на 10%
Спортсмен в первый день пробежал 10 км. Каждый следующий день он увеличивал дневную норму на 10% от пробега предыдущего дня. Через сколько...

Начав тренировки, лыжник в первый день пробежал 10 км. Каждый следующий день он увеличивал пробег на 10%
Начав тренировки, лыжник в первый день пробежал 10 км. Каждый следующий день он увеличивал пробег на 10% от пробега предыдущего дня....


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru