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

По введенным с клавиатуры номеру месяца и дня определить, сколько дней осталось до Нового Года - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Во введенной пользователем строке удалите все пробелы в начале и конце строки http://www.cyberforum.ru/cpp-beginners/thread1213719.html
Во введенной пользователем строке удалите все пробелы в начале и конце строки. Я ищу первый индекс символа не равного пробелу и с конца первый символ не равный пробелу и копирую эту подстроку. Но при выводе этих индексов не то выводится,не пойму.. Код работает когда вводится к примеру так _ _ _ abc _ _ _ выводит abc (Где _ пробел). Но я хотел чтоб если строка _ _ _ ab_c_ _ _ вывело ab_c что по...
C++ Как вычислить арифметическое выражение? Помогите пожалуйста решить задачу на экзамен! Вычисление арифметического выражения. Арифметическое выражение вводится в виде строки вида АорВ, Где А, В – целые числа , а ор – знак арифметической операции +, -, *, /. Написать программу вычисляющую значение выражения.Обеспечить проверку корректности ввода выражения. Мне нужно ее доделать,чтобы вычислить значение выражения.... http://www.cyberforum.ru/cpp-beginners/thread1213704.html
C++ Реализация словаря в двоичном дереве поиска
Помогите,пожалуйста, создать программу на С++! Тема: Релизация словаря в двоичном дереве поиска,очень нужно
C++ Ошибки при сборке любой программы
Почему при построении любой программы возникают одни и те же ошибки: 1>------ Построение начато: проект: ConsoleApplication6, Конфигурация: Debug Win32 ------ 1> stdafx.cpp 1>c:\program files (x86)\microsoft visual studio 11.0\vc\include\iosfwd(46): error C2061: синтаксическая ошибка: идентификатор "fpos_t" 1> c:\program files (x86)\microsoft visual studio...
C++ Сайт про программирование на С++ http://www.cyberforum.ru/cpp-beginners/thread1213660.html
У кого есть сайт про программирование на C++ с видео,бегущей строкой?
C++ Цепочка иерархии классов Какой доступ будет в цепочке protected - public - protected? http://www.cyberforum.ru/attachment.php?attachmentid=413282&stc=1&d=1403326609 подробнее

Показать сообщение отдельно
NanoBreaker
 Аватар для NanoBreaker
23 / 23 / 7
Регистрация: 11.07.2013
Сообщений: 82
21.06.2014, 16:31     По введенным с клавиатуры номеру месяца и дня определить, сколько дней осталось до Нового Года
Мне было лень делать дополнительные условия для кол-ва дней в каждом месяце, надеюсь у тебя руки до этого дотянутся = D. Используются фичи C++11.

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
#include <iostream>
#include <vector>
#include <algorithm>
 
using namespace std;
 
int main(void)
{
    vector<int> months = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
    int day = 0;
    int month = 0;
 
    cout << "Input day: "; cin >> day;
    cout << "Input month: "; cin >> month;
 
    if ((day < 0 || day > 31) || (month < 0 || month > 12))
    {
        cout << "-1" << endl;
        system("PAUSE");
        return EXIT_SUCCESS;
    }
 
    int sum = day;
 
    for_each(months.begin(), months.begin() + month - 1, [&sum](int x){ sum += x; });
 
    cout << "Do novogo goda stalosi " << 365 - sum << " dnei(dnea)." << endl;
 
    system("PAUSE");
    return EXIT_SUCCESS;
}
Добавлено через 10 минут
Всё, все же сделал правильную проверку, совесть проснулась = D

Используй этот кусок кода, замени тот что в коде на этот, ибо редактировать сообщение уже не могу . . .
C++
1
2
3
4
5
6
    if ((day < 0 || day > months[month - 1]) || (month < 0 || month > 12))
    {
        cout << "-1" << endl;
        system("PAUSE");
        return EXIT_SUCCESS;
    }
P.S. Ветвления, значит через if,else конструкции, зачем такое извращение? Индийский программистов и так много в мире, больше не надо )
 
Текущее время: 23:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru