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

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

Войти
Регистрация
Восстановить пароль
 
OrlovEagle
6 / 4 / 1
Регистрация: 19.04.2011
Сообщений: 185
#1

Задача про год - C++

07.02.2013, 21:48. Просмотров 472. Ответов 10
Метки нет (Все метки)

Есть такая задача. Дано число k (от 1 до 365). присвоить значение n (от 0 до 6) в зависимости от того, на какой день недели приходиться k-тый день года, учитывая то, что 1 января понедельник.

Я сначала подумал что можно сделать через остаток от деления. Но это будет работать до 3 января. Намекните какими способами можно ее сделать.

Добавлено через 12 минут
Например 3 число и все числа с шагом +7 являются средами. Как это можно записать?

Добавлено через 12 минут
C++
1
for(i=1,i<365,i+7){if (k=1+i) {n=0}
вот так прокатит?

называется тихо сам с собою я веду беседу
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2013, 21:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача про год (C++):

Задача Новый год и старые свойства длинная арифметика - C++
Здраствуйте помогите пожалуйста с задачой! Вроде бы длинная арифметика! Нужно решить ее срочно! Помогите чем сможете пожалуйста! ...

Задача про самолет - C++
Здравствуйте.вопрос,вернее просьба разрбраться в своем же коде.писал честно говоря &quot;по памяти&quot;,когда начал разбирать свои ошибки,честно...

Задача про планировщик - C++
Друзья, очень надо, код написать помогите а, нужно в консольном приложении visual studio 2008 ...

задача про матрицы - C++
не могу написать программу.только начала изучать язык с++.помогите пожалуйста

Задача про небоскребы - C++
В небоскребе N этажей и всего один подъезд; на каждом этаже по 3 квартиры; лифт может останавливаться только на нечетных этажах....

Задача про рюкзак - C++
Из заданных N предметов выбрать такие, чтобы суммарный вес был менее 30 кг, а стоимость - наибольшей. Напечатать суммарную стоимость. ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Algiz
160 / 160 / 13
Регистрация: 23.02.2011
Сообщений: 347
07.02.2013, 21:55 #2
C++
1
<день года> % 7
не знаю, как ты там с остатком делил, у меня все работает
1
ValeryS
Модератор
6631 / 5039 / 466
Регистрация: 14.02.2011
Сообщений: 16,847
07.02.2013, 21:59 #3
Понедельник это 0 или 1

Цитата Сообщение от OrlovEagle Посмотреть сообщение
Я сначала подумал что можно сделать через остаток от деления.
правильно подумал

Цитата Сообщение от OrlovEagle Посмотреть сообщение
Но это будет работать до 3 января.
Это почему еще?

Цитата Сообщение от OrlovEagle Посмотреть сообщение
Добавлено через 12 минут
Цитата Сообщение от OrlovEagle Посмотреть сообщение
называется тихо сам с собою я веду беседу
А ты думал за 12 минут толпа набежит?
0
OrlovEagle
6 / 4 / 1
Регистрация: 19.04.2011
Сообщений: 185
07.02.2013, 22:01  [ТС] #4
Algiz, действительно работает. я просто остатки от 1 до 7 вводил, а надо от 0 до 6.
0
ValeryS
Модератор
6631 / 5039 / 466
Регистрация: 14.02.2011
Сообщений: 16,847
07.02.2013, 22:07 #5
Цитата Сообщение от OrlovEagle Посмотреть сообщение
я просто остатки от 1 до 7 вводил, а надо от 0 до 6.
Переведи
А лучше код покажи( когда не получалось)
0
OrlovEagle
6 / 4 / 1
Регистрация: 19.04.2011
Сообщений: 185
07.02.2013, 22:16  [ТС] #6
if (i%7==7) {n=7}
0
ValeryS
Модератор
6631 / 5039 / 466
Регистрация: 14.02.2011
Сообщений: 16,847
07.02.2013, 22:23 #7
Цитата Сообщение от OrlovEagle Посмотреть сообщение
if (i%7==7) {n=7}
ну дак у тебя никогда не выполнится условие
остаток от деления на 7
0 1 2 3 4 5 6(заметил числа что тебе и нужны)
если понедельник это 1
то просто
C++
1
n=i%7;
а если понедельник это 0
то
C++
1
n=(i-1)%7;
0
OrlovEagle
6 / 4 / 1
Регистрация: 19.04.2011
Сообщений: 185
07.02.2013, 22:33  [ТС] #8
ну да, я так и сделал. просто не обратил внимание сначала. остаток от деления на 7 не может быть 7 =)
0
vla58862892
1 / 1 / 0
Регистрация: 10.02.2012
Сообщений: 6
07.02.2013, 22:43 #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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include "stdafx.h"
#include <iostream>
#include <cstdlib>
#include <string>
#include <fstream>
#include <conio.h>
#include <sstream>
#include <vector>
#include <cmath>
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    int mm [31]={31,28,31,30,31,30,31,31,30,31,30,31};
    int m,d;
    int den_ned;
 
    cout << "Vvedite dd: ";
    cin >> d;
    cout << "Vvedite mm: ";
    cin >> m;
    int sum=0;
    for(int i=0;i<m-1;i++)
    {
        sum=sum+mm[i];
        cout << "sum"<<sum<<endl;
    }
    sum=sum+d;
    den_ned=sum%7;
    cout << "sum"<<sum<<endl;
    switch (den_ned)
       {
        case 0: cout << "Monday"   <<endl; break;
        case 1: cout << "Tuesday"  <<endl; break;
        case 2: cout << "Wednesday"<<endl; break;
        case 3: cout << "Thursday" <<endl; break;
        case 4: cout << "Friday"   <<endl; break;
        case 5: cout << "Saturday" <<endl; break;
        case 6: cout << "Sunday   "<<endl; break;
       }
 
    system("pause");
    
}
1
OrlovEagle
6 / 4 / 1
Регистрация: 19.04.2011
Сообщений: 185
07.02.2013, 23:08  [ТС] #10
да, через case самое то.
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
11.02.2013, 15:45 #11
Цитата Сообщение от OrlovEagle Посмотреть сообщение
да, через case самое то.
Самое то скорее через массив:
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()
{
    int mm [31]={31,28,31,30,31,30,31,31,30,31,30,31};
    const char *days[] = {"Monday", "Tuesday", "Wednesday", "Thursday",
                          "Friday", "Saturday", "Sunday"};
    int m,d;
    int den_ned;
 
    cout << "Vvedite dd: ";
    cin >> d;
    cout << "Vvedite mm: ";
    cin >> m;
    int sum=0;
    for(int i=0;i<m-1;i++)
    {
        sum=sum+mm[i];
        cout << "sum"<<sum<<endl;
    }
    sum=sum+d;
    den_ned=sum%7;
    cout << "sum"<<sum<<endl;
    cout << days[den_ned] << endl;
    
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.02.2013, 15:45
Привет! Вот еще темы с ответами:

Задача про дроби - C++
Сделал вроде всё правильно, но задача не работает и выдаёт ошибку на компиляции: 1&gt; Для всех выходных данных обновления не требуется....

Задача про биты - C++
Написать функцию, которая возвращает число, полученное из числа X,в котором все розряды, расположенные правее центральной позиции, заменены...

Задача про матрицу - C++
Вообщем завтра сдать надо бы по хорошему. Мне осталось сделать 1 задачу, которую я не знаю как делать. Может напишет кто-нибудь,...

Задача про графы - C++
помогите если не сложно Тексты нужно переписывать в тело сообщения!


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
11.02.2013, 15:45
Ответ Создать тему
Опции темы

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