С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.66/29: Рейтинг темы: голосов - 29, средняя оценка - 4.66
1 / 1 / 0
Регистрация: 06.03.2017
Сообщений: 109
1

Вычислить какое число будет послезавтра

19.07.2017, 00:52. Показов 5667. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
По заданной дате требуется определить какое число будет послезавтра.
Input - 1 8 2009
Output 3 8 2009

Мой код прохожит 53%, где ошибка?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<iostream> 
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
if(a==29 && (b==1 || b==3 || b==5 || b==7 || b==8 || b==10)) cout<<a+2<<" "<<b<<" "<<c;
else if(a==30 && b==12) cout<<1<<" "<<1<<" "<<c+1;
else if(a==31 && b==12) cout<<2<<" "<<1<<" "<<c+1;
else if(a==29 && (b==4 || b==6 || b==9 || b==11)) cout<<1<<" "<<b+1<<" "<<c;
else if(a==30 && (b==4 || b==6 || b==9 || b==11)) cout<<2<<" "<<b+1<<" "<<c;
else if(a==28 && b==2) cout<<1<<" "<<b+1<<" "<<c;
else if(a==29 && b==2) cout<<2<<" "<<b+1<<" "<<c;
else cout<<a+2<<" "<<b<<" "<<c;
return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.07.2017, 00:52
Ответы с готовыми решениями:

Какое число будет послезавтра?
Привет, форумчане! В программе нужно вывести какое число будет послезавтра. Формат ввода данных:...

По заданной дате необходимо определить, какое число будет послезавтра
По заданной дате необходимо определить, какое число будет послезавтра. Необходимо чтоб менялся...

Какое число будет через n дней
Есть дата 01.01.2008. Вопрос какой день будет через n (0&lt;= n &lt;=1000) дней (c учётом високосных...

Определить какое число будет стоять на 135424 месте
В ряд в порядке возрастания выписали все семизначные числа.Потом те из них,в записи которых...

3
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
19.07.2017, 00:57 2
MariaFitzgerald, как минимум нужно учитывать високосные/невисокосные года.

Добавлено через 1 минуту
Да и вообще, увеличь a на 2, а потом уже проверяй вышли ли мы за пределы месяца или нет.
А для этого кол-во дней в каждом месяце забей в массив.
1
68 / 51 / 27
Регистрация: 27.04.2015
Сообщений: 203
19.07.2017, 05:06 3
Лучший ответ Сообщение было отмечено MariaFitzgerald как решение

Решение

MariaFitzgerald,
Цитата Сообщение от nonedark2008 Посмотреть сообщение
как минимум нужно учитывать високосные/невисокосные года.
Добавлено через 1 минуту
Да и вообще, увеличь a на 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
#include <iostream>
 
int main()
{
    int a, b, c;
    std::cin >> a >> b >> c;
    a += 2;
    int arr[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
    if (a > arr[b - 1]) {
        if (b != 2 || c % 4) {//не февраль или не високосный
            a -= arr[b++ - 1];
        }
        else//високосный февраль
        {
            if (a > arr[b - 1] + 1) a -= arr[b++ - 1] + 1;
        }
    }
    if (b > 12) {
        b--;
        c++;
    }
    std::cout << a << ' ' << b << ' ' << c << std::endl;
    system("pause");
    return 0;
}
1
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
19.07.2017, 09:52 4
Цитата Сообщение от YarRainbow Посмотреть сообщение
C++
1
c % 4
C++
1
(c%400!=0 && c%100==0) || c%4!=0
2
19.07.2017, 09:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.07.2017, 09:52
Помогаю со студенческими работами здесь

Нужно рассчитать день, который будет "послезавтра", по заданной дате
Нужно рассчитать день который будет послезавтра из заданной даты. Без использования &quot;всяческих...

По заданной дате требуется определить, какое число будет послезавтра
По заданной дате требуется определить, какое число будет послезавтра. Напомним, что год является...

Что будет если к пустой строке применить strtoint. Какое число будет присвоено?
Что будет если к пустой строке применить strtoint. Какое число будет присвоено?

Определить какое число будет в позиции №10168
Всем привет, пожалуйста,помогите решить задачу Из последовательности натуральных десятичных чисел...


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

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