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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Blueeyer
12 / 12 / 1
Регистрация: 09.10.2013
Сообщений: 222
#1

Проверьте, пожалуйста. Задание: определить, каким днем недели является 1 января данного года - C++

12.11.2013, 17:36. Просмотров 437. Ответов 0
Метки нет (Все метки)

Дана задача:
Вводится номер года. Определить, каким днем недели является 1 января данного года, если 1 января 1900 года - понедельник (для решения этой задачи заметим, что в случае, когда год невисокосный, 1 января следующего года сдвигается на 1 день недели, а если год високосный -то на 2).

P.S Високосный год - это год, который делится на 4, но не делится на 100, либо просто делится на 400.

Вот что в итоге вышло:
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
#include<iostream>
using namespace std;
int main() {
    int i=0, year, suka=1900;
    cout<<"Enter year: "<<endl;
    cin>>year;
    if(suka <= year) {
    while(suka <= year) {
        if (((suka%4==0)&&(suka%100!=0))||(suka%400==0)) {
            i=i+2;}
        else {
            i++;
        }
    suka++;
    }
    int lox = i%7;
    switch(lox) {
        case 1: cout<<"Monday";break;
        case 2: cout<<"Tuesday";break;
        case 3: cout<<"Thursday";break;
        case 4: cout<<"4etverg";break;
        case 5: cout<<"Friday";break;
        case 6: cout<<"Saturday";break;
        case 0: cout<<"Sunday";break;
        }
    }
 
    else {
    while(year <= suka) {
        if (((year%4==0)&&(year%100!=0))||(year%400==0)) {
            i=i+2;}
        else {
            i++;
        }
    year++;
    }
    int lox = i%7;
    switch(lox) {
        case 1: cout<<"Monday";break;
        case 2: cout<<"Tuesday";break;
        case 3: cout<<"Thursday";break;
        case 4: cout<<"4etverg";break;
        case 5: cout<<"Friday";break;
        case 6: cout<<"Saturday";break;
        case 0: cout<<"Sunday";break;
        }
}
    system("PAUSE");
    return 0;
}

Правильно ли это? И может это всё можно было сделать гораздо проще?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.11.2013, 17:36     Проверьте, пожалуйста. Задание: определить, каким днем недели является 1 января данного года
Посмотрите здесь:

Определить, каким днем недели является 1 января данного года - C++
Помогите, чёт не могу понять, как это всё написать. Вот само задание - вводится номер года. Определить, каким днем недели является 1 января...

Определить, каким днем недели является 1 января данного года, если - C++
Прощу вас мне помочь, осталась последняя лаба. Задание: { Вводится номер года. Определить, каким днем недели является 1 января...

Определить, каким днем недели является введенное число - C++
Добрый день помогите пожалуйста написать программу: 1) Составить программу, определяющую каким днем недели является введенное...

Определить день недели для K-го дня года, если известно, что 1 января было субботой - C++
Здравствуйте! Условие задачи: Дни недели пронумерованы следующим образом: 1 - понедельник, 2 - вторник, ... , 6 - суббота, 7 -...

Определить название месяца по количеству дней прошедших с 1 января 1990 года - C++
Составить программу : с 1 января 1990 года по некоторый день прошло n дней, определить название текущего месяца.

Проверьте пожалуйста, правильно ли я сделал задание - C++
Вот задание Дано действительное х. Вычислить \frac{(x-1)(x-3)(x-7)K(x-63)}{(x-2)(x-4)(x-8)K(x-64)} { {...

Для к-го дня года определить день недели - C++
Для к-го дня года, определить день недели. нумерация с 0-воскресенье..6-суббота. Первый день года был понедельник(1). Кода нет,...

Определить тип «дни недели» и выдать все «черные» пятницы года - C++
Используя перечисляемый тип, определить тип «дни недели» и выдать все «черные» пятницы этого года (т.е. число месяца равно13, а день недели...

Определить номер дня недели для K-го дня года - C++
Дни недели пронумерованы следующим образом: 0 — воскресенье, 1 — понедельник, 2 — вторник, …, 6 — суббота. Дано целое число K, лежащее в...

Определить номер дня недели для K дня года - C++
Дни недели пронумерованы следующим образом: 1-понедельник, 2-вторник,6-суббота, 7-воскресенье. Дано целое число K, лежащее в диапазоне...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru