Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 21

Установить порядковый номер дня в году по вводимому числу и месяцу (Переписать со структурой)

13.05.2013, 18:23. Показов 3221. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Программа устанавливает порядковый номер дня в году по вводимому числу и месяцу.
Код программы нужно переписать со структурой!
Помогите, пожалуйста!

Вот код:
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
#include "stdafx.h"
#include <iostream>
 
using namespace std;
static char daytab[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}};
 
 
 
int dengoda (int year, int month, int day)
 
{
int l;
char *p;
l = year%4 == 0 && year%100 != 0 || year%400 == 0;
p=daytab[l];
while (--month)
day+=*++p;
return day;
}
 
int _tmain()
 
{ int y,d,m;
cout<<"Vvedite den: \n";
cin>>d;
cout<<"Vvedite month: \n";
cin>>m;
cout<<"Vvedite god: \n";
cin>>y;
 
cout<<endl<<dengoda(y,m,d)<<endl;
return 0;
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.05.2013, 18:23
Ответы с готовыми решениями:

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

Вычислить номер дня в невисокосном году по заданным числу и месяцу
Помогите пожалуйста! Нужно написать программу, которая сможет вычислить номер дня в не високосном году по заданным числу и месяцу на языке...

Вычислить номер дня в не вискокосном году по заданным числу и месяцу.
Помогите пожалуйста решить задачку в паскале. Вычислить номер дня в не високосном году по заданным числу и месяцу. Считаем 1...

3
419 / 418 / 167
Регистрация: 28.11.2010
Сообщений: 1,183
13.05.2013, 18:41
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
#include <iostream>
 
using namespace std;
 
struct date {
    int y;
    int d;
    int m;
};
 
static char daytab[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 } };
 
int dengoda(date d) {
    int l;
    char *p;
    l = (d.y % 4 == 0) && (d.y % 100 != 0) || (d.y % 400 == 0);
    p = daytab[l];
    while (--d.m)
        d.d += *++p;
    return d.d;
}
 
int main()
 
{
    date data;
    cout << "Vvedite den: \n";
    cin >> data.d;
    cout << "Vvedite month: \n";
    cin >> data.m;
    cout << "Vvedite god: \n";
    cin >> data.y;
 
    cout << endl << dengoda(data) << endl;
    return 0;
}
Добавлено через 1 минуту
Это в лоб переделка вашей программы.
1
0 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 21
13.05.2013, 18:56  [ТС]
Спасибо большое!

Не могли бы вы еще раз помочь?
Программа аналогичная, только она уже устанавливает дату по вводимому номеру порядкового дня.

Вот код:
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
#include "stdafx.h"
#include <iostream>
 
using namespace std;
static char daytab[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}};
 
 
 
int dengoda (int year, int month, int day)
 
{
int l;
char *p;
l = year%4 == 0 && year%100 != 0 || year%400 == 0;
p=daytab[l];
while (--month)
day+=*++p;
return day;
}
 
void daymonth (int year, int dayyear, int *pmonth, int *pday)
 
{
int l;
char *p;
l = year%4 == 0 && year%100 != 0 || year%400 == 0;
p=daytab[l];
while (dayyear>*++p)
dayyear-=*p;
*pmonth=p-*(daytab+l);
*pday=dayyear;
}
 
int _tmain()
 
{ int y,d,pm,pd;
cout<<"Vvedite poryadkoviy nomer chisla: \n";
cin>>d;
cout<<"Vvedite god: \n";
cin>>y;
 
daymonth(y,d,&pm,&pd);
cout<<endl<<"Day: "<<pd<<endl;
cout<<"Month: "<<pm<<endl;
cout<<"Year: "<<y<<endl<<endl;
return 0;
}
0
Шевкет
21.12.2013, 01:08
Python
1
Как реализация программы будет выгладить на Питоне?
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.12.2013, 01:08
Помогаю со студенческими работами здесь

Вводим номер месяца M и дня D. Определить порядковый номер дня в году T соответствующий этой дате
Вводим номер месяца M и дня D. Определить порядковый номер дня в году T соответствующий этой дате. Помогите. Очень нужно ...

По заданному числу, месяцу и году указать дату 2 дня назад
1.По заданному числу, месяцу и году указать дату 2 дня назад. Учесть особенности, возникающие в начале месяца и года. (развилка) ...

Bash: порядковый номер дня в году
Как в bash скрипте определить порядковый номер дня в году по заданной дате? Например, мне нужно, чтобы вычислялось, что 15 мая - это 135...

По дате определить порядковый номер дня в году
По введенной дате (месяц, год, число) определить порядковый номер дня в году

Как в Акцессе получить порядковый номер дня в году?
Т.е. чтобы 1 февряля было 32 день, а 31 декабря - 365день?


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru