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

Структура для описания понятия дата - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
Бо
 Аватар для Бо
5 / 5 / 2
Регистрация: 08.12.2009
Сообщений: 158
10.01.2010, 21:28     Структура для описания понятия дата #1
(Работаю в Visual studio 6.0)
Ввести структуру(с полями число,месяц,год)для описания понятия дата.Составить и протестировать функцию,которая:

а)вычисляет интервал (в днях),прошедший между двумя датами;

б)по порядковому номеру дня в году определяет число и месяц года,соответствующие этому дню;

в)по введенной дате распечатывать дату на N дней вперед.

как я понял это надо три разных функций.
Помогите кто чем может.повозможности хоть с каким либо объяснением)))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2010, 21:28     Структура для описания понятия дата
Посмотрите здесь:

C++ Используя структуру для определения понятия студент, распечатать фамилии и имена отличников.
C++ Ввести структуру для описания комплексного числа
C++ Построить класс для описания плоской геометрической фигуры квадрат
Построить класс для описания плоской геометрической фигуры прямоугольник C++
C++ Построить систему классов для описания плоских геометрических фигур
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Radjuk
 Аватар для Radjuk
134 / 68 / 12
Регистрация: 10.10.2009
Сообщений: 187
10.01.2010, 22:17     Структура для описания понятия дата #2
ну вот структура

C
1
2
3
4
5
6
struct time
 {
  int day;
  int month;
  int year;
 };
Добавлено через 1 минуту
C
1
2
3
4
5
6
7
8
9
10
11
void main()
 {
  time *t;
  int i,n=1;
  for(i=0;i<n;i++)
   {
    cin>>t[i].day;
    cin>>t[i].month;
    cin>>t[i].year;
   }
 }
Добавлено через 2 минуты
Цитата Сообщение от Бо Посмотреть сообщение
а)вычисляет интервал (в днях),прошедший между двумя датами;
Должно производить определения такого типа? 1 дата 22.01--- 2 дата 3.02
Бо
 Аватар для Бо
5 / 5 / 2
Регистрация: 08.12.2009
Сообщений: 158
12.01.2010, 17:44  [ТС]     Структура для описания понятия дата #3
Да такого))
а еще б лучше если б 1дата 22.01.2010----2дата 3.02.2010
Radjuk
 Аватар для Radjuk
134 / 68 / 12
Регистрация: 10.10.2009
Сообщений: 187
12.01.2010, 18:47     Структура для описания понятия дата #4
я прийду сделаю вам после 22 по москве)
Бо
 Аватар для Бо
5 / 5 / 2
Регистрация: 08.12.2009
Сообщений: 158
12.01.2010, 18:49  [ТС]     Структура для описания понятия дата #5
Цитата Сообщение от Radjuk Посмотреть сообщение
я прийду сделаю вам после 22 по москве)
Спасиб)))как вам удобно))
мне не к спеху
Radjuk
 Аватар для Radjuk
134 / 68 / 12
Регистрация: 10.10.2009
Сообщений: 187
12.01.2010, 23:13     Структура для описания понятия дата #6
а задавать что в феврале 28 или 29 дней?
и что другие месяца имееют то 31 то 30 дней?
Бо
 Аватар для Бо
5 / 5 / 2
Регистрация: 08.12.2009
Сообщений: 158
13.01.2010, 15:26  [ТС]     Структура для описания понятия дата #7
Цитата Сообщение от Radjuk Посмотреть сообщение
задавать что в феврале 28 или 29 дней?
и что другие месяца имееют то 31 то 30 дней?
Да в феврале 28,и то что другие имеют то 31 то 30.
Radjuk
 Аватар для Radjuk
134 / 68 / 12
Регистрация: 10.10.2009
Сообщений: 187
13.01.2010, 19:39     Структура для описания понятия дата #8
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
struct tim
 {
  int day;
  int month;
  int year;
 };
 
void main()
 {
  tim *t,temp;
  int i,n=1,k,maxday=30,j;
 
  clrscr();
 
  for(i=1;i<=n;i++)
   {
    cout<<"Enter day:";cin>>t[i].day;
    cout<<"Enter month:";cin>>t[i].month;
    cout<<"Enter year";cin>>t[i].year;
   }
 
       i=1;
   cout<<"\nChoose your time :\n";
   cout<<"["<<i<<";"<<n<<"]";
   cin>>k;
 
 
 
  for(j=1;j<=7;j++)
   {
    if(t[k].month == j)
     {
      if(t[k].month % 2)
       {
    maxday = 31;
       }
      if(t[k].month == 2)
       {
    maxday = 28;
       }
      cout<<"\nMAX DAY = "<<maxday;
     }
   }
 
   for(j=8;j<=12;j++)
    {
     if(t[k].month == j)
      {
       maxday = 31;
       if(t[k].month % 2)
    {
     maxday = 30;
    }
       cout<<"\MAX DAY = "<<maxday;
      }
    }
    int interval=0;
   cout<<"\nYour date: "<<t[k].day<<" "<<t[k].month<<" "<<t[k].year;
   cout<<"\nEnter deadline date:";
   cout<<"\nEnter day:";cin>>temp.day;
   cout<<"\nEnter month:";cin>>temp.month;
   cout<<"\nEnter year:";cin>>temp.year;
 
   cout<<"\nInterval raven: ";
   interval = temp.day + maxday - t[k].day;
   cout<<interval;
 
 
  getch();
 }
Добавлено через 3 минуты
мжна также сделать на то если интервал > maxday то вывести x дней y месяцов
accept
4837 / 3236 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
13.01.2010, 22:16     Структура для описания понятия дата #9
Radjuk, память не выделил
C++
1
tim *t = new tim[10];
десять дат
потом освободить ещё
C++
1
delete [] t;
Бо
 Аватар для Бо
5 / 5 / 2
Регистрация: 08.12.2009
Сообщений: 158
13.01.2010, 22:21  [ТС]     Структура для описания понятия дата #10
Спасиба))

Цитата Сообщение от Radjuk Посмотреть сообщение
мжна также сделать на то если интервал > maxday то вывести x дней y месяцов
Та не стоит так заморачиваться))Это задача так на ознакомление работы со структурой.
У меня препод просто не умеет объяснять,вот я и пишу сюда,шоб хоть самому понять.
Еще раз спасиба=))Буду разбираться
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.01.2010, 21:39     Структура для описания понятия дата
Еще ссылки по теме:

Определить структуру для описания важнейших исторических дат C++
C++ Составить массив структур для описания сотрудников
Классы для описания больницы (обсуждение) C++

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

Или воспользуйтесь поиском по форуму:
Radjuk
 Аватар для Radjuk
134 / 68 / 12
Регистрация: 10.10.2009
Сообщений: 187
14.01.2010, 21:39     Структура для описания понятия дата #11
да за память забыЛ)))

если надо я переделал под вызов функиции как пишет в задании

Добавлено через 22 часа 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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
struct tim
 {
  int day;
  int month;
  int year;
 };
 
void inter(tim *t,tim temp,int k);
 
void main()
 {
  
  tim *t,temp;
 
  int i,n=1,k;
  t=(tim;)calloc(n,sizeof(tim));
  clrscr();
 
  for(i=1;i<=n;i++)
   {
    cout<<"Enter day:";cin>>t[i].day;
    cout<<"Enter month:";cin>>t[i].month;
    cout<<"Enter year";cin>>t[i].year;
   }
 
       i=1;
   cout<<"\nChoose your time :\n";
   cout<<"["<<i<<";"<<n<<"]";
   cin>>k;
 
   cout<<"\nYour date: "<<t[k].day<<" "<<t[k].month<<" "<<t[k].year;
   cout<<"\nEnter deadline date:";
   cout<<"\nEnter day:";cin>>temp.day;
   cout<<"\nEnter month:";cin>>temp.month;
   cout<<"\nEnter year:";cin>>temp.year;
   
   inter(t,temp,k);
   getch();
   delete(t);
   }
  
void inter(tim *t,tim temp,int k)
 {
  int j,maxday=30;
  for(j=1;j<=7;j++)
   {
    if(t[k].month == j)
     {
      if(t[k].month % 2)
       {
    maxday = 31;
       }
      if(t[k].month == 2)
       {
    maxday = 28;
       }
      cout<<"\nMAX DAY = "<<maxday;
     }
   }
   for(j=8;j<=12;j++)
    {
     if(t[k].month == j)
      {
       maxday = 31;
       if(t[k].month % 2)
    {
     maxday = 30;
    }
       cout<<"\MAX DAY = "<<maxday;
      }
    }
    int interval=0;   
   interval = temp.day + maxday - t[k].day;
   cout<<"\nInterval =";interval;
 }
Yandex
Объявления
14.01.2010, 21:39     Структура для описания понятия дата
Ответ Создать тему
Опции темы

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