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

Получить тройку чисел, соответствующих следующему дню - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.86
Chappi
2 / 2 / 0
Регистрация: 04.07.2010
Сообщений: 36
04.07.2010, 16:07     Получить тройку чисел, соответствующих следующему дню #1
кто нибудь может сталкивался с похожей прогой помогите.....
Даны натуральные числа а, b, с, которые обозначают число, месяц и год, например 1, 4, 1901 - 1 апреля 1901 года. Получить тройку чисел, соответствующих следующему дню
как я понял на выводе просто добавить 1 день...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2010, 16:07     Получить тройку чисел, соответствующих следующему дню
Посмотрите здесь:

C++ Получить третий массив той же размерности, каждый элемент которого равен большему из соответствующих элементов данного массива
C++ Из 2 заданых бинарных файлов вывести в 3 разность соответствующих чисел
выведите на экран таблицу символов и соответствующих им целых чисел. C++
Преобразовать массив целых чисел Х по следующему правилу: C++
C++ Цикл While, вывод таблицы символов и соответствующих им целых чисел
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
04.07.2010, 16:14     Получить тройку чисел, соответствующих следующему дню #2
Цитата Сообщение от Chappi Посмотреть сообщение
как я понял на выводе просто добавить 1 день...
И ничего, если как у Мюнхаузена тридцать второе мая получится...
Chappi
2 / 2 / 0
Регистрация: 04.07.2010
Сообщений: 36
04.07.2010, 18:42  [ТС]     Получить тройку чисел, соответствующих следующему дню #3
Цитата Сообщение от easybudda Посмотреть сообщение
И ничего, если как у Мюнхаузена тридцать второе мая получится...
да это то ладно,до ума то я её доведу=)))

Добавлено через 2 часа 18 минут
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
#include<cstring>
#include<iostream> 
using namespace std;
int main ()
{
int date;
int mounth;
int x=0;
int y=0;
int z=0;
int year;
std::cout<<"vvedite god ne bolwe 2010\n";
std::cin>>x;
std::cout<<"vvedite mesiats \n";
std::cin>>y;
std::cout<<"vvedite den '\n";
std::cin>>z;
if (x>2010 || y>12 | z>31)
puts ("nepravilno vvedennuu den mesiats ili god");
system ("Pause");
return(0);
else
goto 24;
year=x;
mounth=y;
date=z+1;
puts("pollychenaia data");
cout << "god  "<<year<<'\n';
cout << "mesiats "<<mounth<<'\n';
cout << "den'  "<<date<<'\n';
puts ("Thank you for using my program");
system ("Pause");
}
вроде бы написал всё но компилятор всё ругаеться
expected primary-expression before "else"
expected `;' before "else"
на 22ю строчку
помогите чет нифига поняь не могу че это он)))где то наверно не надо точку с запятой

Добавлено через 5 минут
мб кто понимает че он хочет=) ставлю ; перед else ещё больше ошибок=(((((
besstiaa
 Аватар для besstiaa
93 / 93 / 7
Регистрация: 04.06.2010
Сообщений: 223
04.07.2010, 18:51     Получить тройку чисел, соответствующих следующему дню #4
C++
1
return 0;
Это вообщем-то ставится в конце тела функции main

Добавлено через 1 минуту
Между if и else system надо убрать...

Добавлено через 2 минуты
C++
1
2
else
goto 24;
Тоже лишнее. Потому как если условие в if не выполняется, то программа выполняет действия за блоком оператора if.
Chappi
2 / 2 / 0
Регистрация: 04.07.2010
Сообщений: 36
04.07.2010, 18:56  [ТС]     Получить тройку чисел, соответствующих следующему дню #5
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
#include<cstring>
#include<iostream> 
using namespace std;
int main ()
{
int date;
int mounth;
int x=0;
int y=0;
int z=0;
int year;
std::cout<<"vvedite god ne bolwe 2010\n";
std::cin>>x;
std::cout<<"vvedite mesiats \n";
std::cin>>y;
std::cout<<"vvedite den '\n";
std::cin>>z;
if (x>2010 || y>12 || z>31)
puts ("nepravilno vvedennuu den mesiats ili god")
else goto 21
year=x;
mounth=y;
date=z+1;
puts("pollychenaia data");
cout << "god  "<<year<<'\n';
cout << "mesiats "<<mounth<<'\n';
cout << "den'  "<<date<<'\n';
puts ("Thank you for using my program");
system ("Pause");
}
подправил
теперь вообще тока одна ошибка
expected `;' before "else"
besstiaa
 Аватар для besstiaa
93 / 93 / 7
Регистрация: 04.06.2010
Сообщений: 223
04.07.2010, 18:57     Получить тройку чисел, соответствующих следующему дню #6
C++
1
puts ("nepravilno vvedennuu den mesiats ili god");
Так поставь точку с запятой здесь
Chappi
2 / 2 / 0
Регистрация: 04.07.2010
Сообщений: 36
04.07.2010, 18:58  [ТС]     Получить тройку чисел, соответствующих следующему дню #7
всё заработало goto убрал просто)))спс)
besstiaa
 Аватар для besstiaa
93 / 93 / 7
Регистрация: 04.06.2010
Сообщений: 223
04.07.2010, 19:00     Получить тройку чисел, соответствующих следующему дню #8
Осталась лишь мелочь Проверка А то будет 32 декабря 2009 Вместо 1 января 2010
Vladimir616
110 / 110 / 3
Регистрация: 05.07.2009
Сообщений: 224
04.07.2010, 19:05     Получить тройку чисел, соответствующих следующему дню #9
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
#include <iostream> 
using namespace std;
int main ()
{
    setlocale(LC_ALL, "rus");
    int date;
    int mounth;
    int x=0;
    int y=0;
    int z=0;
    int year;
    std::cout<<"Введите год не больше 2010\n";
    std::cin>>x;
    std::cout<<"Введите месяц \n";
    std::cin>>y;
    std::cout<<"Введите день \n";
    std::cin>>z;
    if (x > 2010 || y > 12 || z > 31)
        puts ("Неправильно введён месяц или год");
    year = x;
    mounth = y;
    date = z + 1 ;
    puts("Полученная дата");
    cout << "Год  "<< year << '\n';
    cout << "Месяц " <<mounth <<'\n';
    cout << "День  "<<date<<'\n';
    puts ("Thank you for using my program");
    system ("Pause");
}
Заодно русифицировал
Chappi
2 / 2 / 0
Регистрация: 04.07.2010
Сообщений: 36
04.07.2010, 19:07  [ТС]     Получить тройку чисел, соответствующих следующему дню #10
Цитата Сообщение от besstiaa Посмотреть сообщение
Осталась лишь мелочь Проверка А то будет 32 декабря 2009 Вместо 1 января 2010
ты чего хоть у меня же есть уже проверка посмотри внимательней
(x > 2010 || y > 12 || z > 31)

Добавлено через 49 секунд
setlocale(LC_ALL, "rus"); это русификация да???
Vladimir616
110 / 110 / 3
Регистрация: 05.07.2009
Сообщений: 224
04.07.2010, 19:08     Получить тройку чисел, соответствующих следующему дню #11
<del>
besstiaa
 Аватар для besstiaa
93 / 93 / 7
Регистрация: 04.06.2010
Сообщений: 223
04.07.2010, 19:08     Получить тройку чисел, соответствующих следующему дню #12
Цитата Сообщение от Chappi Посмотреть сообщение
ты чего хоть у меня же есть уже проверка посмотри внимательней
Не о том речь ) Если ввести 31.12.2009, то следующий день, судя по твоей проге, будет 32 декабря 2009 года ) То о чем говорил easybudda
Chappi
2 / 2 / 0
Регистрация: 04.07.2010
Сообщений: 36
04.07.2010, 19:09  [ТС]     Получить тройку чисел, соответствующих следующему дню #13
ну я тупоооойDDDDDD
Vladimir616
110 / 110 / 3
Регистрация: 05.07.2009
Сообщений: 224
04.07.2010, 19:09     Получить тройку чисел, соответствующих следующему дню #14
Chappi, она, родимая.
Chappi
2 / 2 / 0
Регистрация: 04.07.2010
Сообщений: 36
04.07.2010, 19:20  [ТС]     Получить тройку чисел, соответствующих следующему дню #15
C++
1
2
if (z=31)
 date=1;
Добавлено через 5 минут
ща всё пашет))))а я сначала и не понял о чём ты))))
besstiaa
 Аватар для besstiaa
93 / 93 / 7
Регистрация: 04.06.2010
Сообщений: 223
04.07.2010, 19:22     Получить тройку чисел, соответствующих следующему дню #16
При такой проверке у тебя после 31.12.2009 получится 1.12.2009 )

Да и к тому же в месяце дней может быть меньше В феврале, например Да и год иногда может меняться...
Vladimir616
110 / 110 / 3
Регистрация: 05.07.2009
Сообщений: 224
04.07.2010, 19:22     Получить тройку чисел, соответствующих следующему дню #17
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
#include <iostream> 
using namespace std;
int main ()
{
    setlocale(LC_ALL, "rus");
    int date;
    int mounth;
    int x = 0;
    int y = 0;
    int z = 0;
    int year;
    std::cout << "Введите год не больше 2010\n";
    std::cin >> x;
    std::cout << "Введите месяц \n";
    std::cin >> y;
    std::cout << "Введите день \n";
    std::cin >> z;
    if (x > 2010 || y > 12 || z > 31)
        puts ("Неправильно введён месяц или год");
    if(z == (y!=2?((y%2)^(y>7))+30:(!(x%400)||!(x%4)&&(x%25)?29:28)))
    {
        y++;
        z = 0;
    }
    if(y > 12)
    {
        y = 1;
        x++;
    }
    year = x;
    mounth = y;
    date = z + 1 ;
    puts("Полученная дата");
    cout << "Год  "<< year << '\n';
    cout << "Месяц " << mounth <<'\n';
    cout << "День  "<< date<<'\n';
    puts ("Thank you for using my program");
    system ("Pause");
}
Полностью рабочая версия, переводит месяц и год вперёд, только не спрашивайте пожалуйста, как это работает.
Chappi
2 / 2 / 0
Регистрация: 04.07.2010
Сообщений: 36
04.07.2010, 19:28  [ТС]     Получить тройку чисел, соответствующих следующему дню #18
cheto y menia vse ravno krokoziabri)))
вместо русского всмысле)))
Vladimir616
110 / 110 / 3
Регистрация: 05.07.2009
Сообщений: 224
04.07.2010, 19:31     Получить тройку чисел, соответствующих следующему дню #19
Chappi, а компилятор какой?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.07.2010, 19:32     Получить тройку чисел, соответствующих следующему дню
Еще ссылки по теме:

C++ Массив: Получить новый массив В по следующему правилу: В1=А1+А10
Используя цикл, выведите на экран таблицу символов и соответствующих им целых чисел C++
C++ Бесконечная последовательность рациональных чисел v0, v1 , . образована по следующему закону :

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

Или воспользуйтесь поиском по форуму:
Chappi
2 / 2 / 0
Регистрация: 04.07.2010
Сообщений: 36
04.07.2010, 19:32  [ТС]     Получить тройку чисел, соответствующих следующему дню #20
Vladimir616, Dev-C++ ,у вас какой???
Yandex
Объявления
04.07.2010, 19:32     Получить тройку чисел, соответствующих следующему дню
Ответ Создать тему
Опции темы

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