С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
 Аватар для Fantom.AS
2 / 1 / 2
Регистрация: 17.11.2010
Сообщений: 121

Вывод даты по году и номеру дня

02.12.2010, 10:03. Показов 2828. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Фрагмент кода


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 "stdafx.h"
#include "stdio.h"
#include "conio.h"
#include "iostream"
#include "string.h"
using namespace std;
static int day_tab[2][13] = {
      (0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31),
      (0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)};
const int maxline=4;
 
  
int day_of_year(int year,int month,int *day)      /* set day of year - день набора года */
                                 /* from month & day - с месяца & дня */  
 {
   int i, leap;
   leap = year%4 == 0 && year%100 != 0 || year%400 == 0;
   for (i = 1; i < month; i++)
      *day += day_tab[leap][i];
   return(*day);
}
 
void month_day(int year,int  yearday,int *pmonth,int *pday) /*set month,day - set месяц, день */
                                        /* from day of year - со дня года */
{
    int i, leap;
    leap = year%4 == 0 && year%100 != 0 || year%400 == 0;
    for (i = 1; yearday > day_tab[leap][i]; i++)
        yearday -= day_tab[leap][i];
    *pmonth = i;
    *pday = yearday;
    return;
}
int main(void)
{   
 
    getch();
    return 0;
}
Задание вывести дату, зная ее номер дня и год.
В этом коде пустая главная функция, надо разобраться в 2-х других функциях разобраться и выполнить задание.
Заранье спасибо!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.12.2010, 10:03
Ответы с готовыми решениями:

По заданному году и порядковому номеру дня в году определять день недели и месяц этого дня
Задачу не можем решить 3 людьми. ______________________________ Написать программу, которая бы позволяла по заданному году и...

Программа, которая бы позволяла по заданному году и порядковому номеру дня в году определять день недели
Ребята, помогите доработать код=) день недели выводится не правильно, примерно после 50 года=( Вот задание: Написать программу,...

Вычислить число и месяц в невисокосном году по номеру дня
Вычислить число и месяц в невисокосном году по номеру дня.

7
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
02.12.2010, 11:00
А в каком виде вводятся данные?

Добавлено через 18 секунд
желательно пример ввода и вывода.
0
 Аватар для Fantom.AS
2 / 1 / 2
Регистрация: 17.11.2010
Сообщений: 121
02.12.2010, 13:02  [ТС]
Цитата Сообщение от Kastaneda Посмотреть сообщение
А в каком виде вводятся данные?

Добавлено через 18 секунд
желательно пример ввода и вывода.
А этого не знаю точно. номер дня и год.
например,
Ввод: 5 2010 - это пятый день 2010 года
Вывод: 5. 01. 2010 или 5 января 2010
как то так, и еще, можно ли определить какой это день недели.
0
 Аватар для LineStown
72 / 71 / 8
Регистрация: 04.08.2010
Сообщений: 434
02.12.2010, 13:14
Не зная задачи - писать то, что нашел в сети\
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
02.12.2010, 14:04
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 day,year,i;
    cout<<"Enter day and year (\"day year\") : ";
    cin>>day>>year;
    for(i=1;i<=12;i++){
        if((i==2)&&(year%4==0&&year%100!=0||year%400==0)){
            if(day-29>=0)
                day-=29;
            else break; 
            }
        else if(i==2){
            if(day-28>=0)
                day-=28;
            else break; 
            }
        else if(i==1||i==3||i==5||i==7||i==8||i==10||i==12){
            if(day-31>=0)
                day-=31;
            else break; 
            }
        else if(day-30>=0)
            day-=30;
        else break;
    }
    cout<<"Day "<<day<<", month "<<i<<" year "<<year<<endl;
    return 0;
}
Цитата Сообщение от Fantom.AS Посмотреть сообщение
или 5 января 2010
Из этого кода уже легко переделать.


Цитата Сообщение от Fantom.AS Посмотреть сообщение
можно ли определить какой это день недели.
можно, но лень))

Добавлено через 14 минут
C++
1
if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
можно заменить на
C++
1
if(i<8 ? i%2 : !(i%2))
0
 Аватар для Fantom.AS
2 / 1 / 2
Регистрация: 17.11.2010
Сообщений: 121
02.12.2010, 14:53  [ТС]
Цитата Сообщение от LineStown Посмотреть сообщение
Не зная задачи - писать то, что нашел в сети\
это задание препод дал. сам толком ничего не объяснил.

Добавлено через 33 секунды
Цитата Сообщение от Kastaneda Посмотреть сообщение
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 day,year,i;
    cout<<"Enter day and year (\"day year\") : ";
    cin>>day>>year;
    for(i=1;i<=12;i++){
        if((i==2)&&(year%4==0&&year%100!=0||year%400==0)){
            if(day-29>=0)
                day-=29;
            else break; 
            }
        else if(i==2){
            if(day-28>=0)
                day-=28;
            else break; 
            }
        else if(i==1||i==3||i==5||i==7||i==8||i==10||i==12){
            if(day-31>=0)
                day-=31;
            else break; 
            }
        else if(day-30>=0)
            day-=30;
        else break;
    }
    cout<<"Day "<<day<<", month "<<i<<" year "<<year<<endl;
    return 0;
}

Из этого кода уже легко переделать.



можно, но лень))

Добавлено через 14 минут
C++
1
if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
можно заменить на
C++
1
if(i<8 ? i%2 : !(i%2))
а функции куда вставить?
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
02.12.2010, 14:58
какие ф-ции, это готовый код!
0
 Аватар для Fantom.AS
2 / 1 / 2
Регистрация: 17.11.2010
Сообщений: 121
02.12.2010, 15:03  [ТС]
Цитата Сообщение от Kastaneda Посмотреть сообщение
какие ф-ции, это готовый код!
спасибо за код, но у меня задание с использованием фунций
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.12.2010, 15:03
Помогаю со студенческими работами здесь

программа которая по номеру дня в году выводит число и месяц
программа которая по номеру дня в году выводит число и месяц (например, 7-й день года — 7 января) что б при запуске появилось сообщение...

По номеру дня в году вывести число и месяц в общепринятой форме
Составить программу, которая по номеру дня в году выводит число и месяц в общепринятой форме. Например, 33-ий день в году – 2 февраля.

Календарь. Ввод даты - вывод дня недели
Здрасте , помогите написать ф-ю. Ввожу 4.11.2014 , программа выдает &quot;Вторник&quot; спасибо большое

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

Составить программу, которая по номеру введенного дня недели вводит название дня.
Составить программу, которая по номеру введенного дня недели вводит название дня.


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru