Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 1
Регистрация: 01.05.2012
Сообщений: 57
1

Создать класс для обработки информации о различных датах

05.12.2012, 09:35. Показов 1112. Ответов 3

Author24 — интернет-сервис помощи студентам
5.1. Создать класс для обработки информации о различных датах.
Каждая дата - это число, месяц, год, название даты.
Функции:
а) функция ввода информации о дате;
б) функция вывода информации о дате;
в) функция, возвращающая год даты;
г) функция, определяющая, принадлежит ли дата сезону, заданному переменной Х.

Думал,как выполнить 4 пункт. Вот,что получается: мы вводим месяц(цифрой),и потом сравнивать месяцы из массива объектов с заданным месяцем,только я не пойму ,как реализовать это.
Помогите,пожалуйста.

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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <string>
using namespace std;
 
class data
{
private:
    int day;
    int month;
    int year;
    string name;
 
 
public:
        void output();
        void input();
        int output_year();
        void season(int tmp,int count);
};
void data::input()
{
    cout<<"Input day: ";cin>>day;cout<<endl;
    cout<<"Input month: ";cin>>month;cout<<endl;
    cout<<"Input year: ";cin>>year;cout<<endl;
    cout<<"Input name dat:";cin>>name;cout<<endl;
}
void data::output()
{
    cout<<"Day  : "<<day<<endl;
    cout<<"Month: "<<month<<endl;
    cout<<"Year : "<<year<<endl;
    cout<<"Name : "<<name<<endl;
}
int data::output_year()
{
    return data::year;
}
void data::season(int tmp,int count)
{
    if((month==3)||(month==4)||(month==5))
    {
        if((tmp>=3) || (tmp<=4))
        {
            cout<<"Sezon "<<count+1<<"-oi dati prinadlejit zadannomy sezony"<<endl;
        }
        else
            cout<<"Sezon "<<count+1<<"-oi dati ne prinadlejit zadannomy sezony"<<endl;
    }
    if((month==6)||(month==7)||(month==8))
    {
        if((tmp>=6) || (tmp<=8))
        {
            cout<<"Sezon "<<count+1<<"-oi dati prinadlejit zadannomy sezony"<<endl;
        }
        else
            cout<<"Sezon "<<count+1<<"-oi dati ne prinadlejit zadannomy sezony"<<endl;
    }
    if((month==9)||(month==10)||(month==11))
    {
        if((tmp>=9) || (tmp<=11))
        {
            cout<<"Sezon "<<count+1<<"-oi dati prinadlejit zadannomy sezony"<<endl;
        }
        else
            cout<<"Sezon "<<count+1<<"-oi dati ne prinadlejit zadannomy sezony"<<endl;
    }
    if((month==12)||(month==1)||(month==2))
    {
        if((tmp==12) || (tmp<=2))
        {
            cout<<"Sezon "<<count+1<<"-oi dati prinadlejit zadannomy sezony"<<endl;
        }
        else
            cout<<"Sezon "<<count+1<<"-oi dati ne prinadlejit zadannomy sezony"<<endl;
    }
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "Russian");
    data massiv[10];
    cout<<"Введите количество дат: ";
    int n;
    cin>>n;
    for(int i=0;i<n;i++)
    {
        cout<<"Информация о "<<i+1<<"-й дате:"<<endl;
        massiv[i].input();
    }
    system("cls");
    for(int i=0;i<n;i++)
    {
        cout<<"\n Информация o "<<i+1<<"-й дате:"<<endl;
        massiv[i].output();
    }
    cout<<"Года дат:"<<endl;
    for(int i=0;i<n;i++)
    {
        cout<<"Год "<<i+1<<"-ой даты : "<<massiv[i].output_year()<<endl;
    }
    int tmp;
    cout<<"Введите месяц(цифрой): ";cin>>tmp;cout<<endl;
    for(int i=0;i<n;i++)
    {
        massiv[i].season(tmp,i);
    }
   
 
    getch();
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.12.2012, 09:35
Ответы с готовыми решениями:

Создать класс для обработки информации об инструментах
Только начали изучать классы. Немного недопонимаю я их. Задача: Создать класс для обработки...

Класс для обработки информации
Создать класс для обработки информации о различных датах. Каждая дата - это число, месяц, год,...

Класс для обработки информации о людях
13.1. Создать класс для обработки информации о людях. Сведения о каждом человеке содержат ФИО,...

Класс для обработки информации о вычислительной машине
Создать класс для обработки информации о вычислительной машине. Сведения о вычислительной машине...

3
Модератор
3387 / 2159 / 352
Регистрация: 13.01.2012
Сообщений: 8,378
05.12.2012, 11:24 2
Цитата Сообщение от kokoz9br Посмотреть сообщение
принадлежит ли дата сезону, заданному переменной Х
а мне показалось что имеются ввиду
X =
1 - зима - месяцы 12, 1, 2
2 - весна - месяцы 3, 4, 5
3 - лето - месяцы 6, 7, 8
4 - осень - месяцы 9, 10, 11
тогда функция принадлежности к сезону запишется как
C++
1
2
3
4
bool date_in_season(int x)
{
    return (month + 1) % 12 / 3 + 1 == x;
}
Добавлено через 10 секунд
Цитата Сообщение от kokoz9br Посмотреть сообщение
принадлежит ли дата сезону, заданному переменной Х
а мне показалось что имеются ввиду
X =
1 - зима - месяцы 12, 1, 2
2 - весна - месяцы 3, 4, 5
3 - лето - месяцы 6, 7, 8
4 - осень - месяцы 9, 10, 11
тогда функция принадлежности к сезону запишется как
C++
1
2
3
4
bool date_in_season(int x)
{
    return (month + 1) % 12 / 3 + 1 == x;
}
0
0 / 0 / 1
Регистрация: 01.05.2012
Сообщений: 57
06.12.2012, 17:41  [ТС] 3
Цитата Сообщение от vxg Посмотреть сообщение
а мне показалось что имеются ввиду
X =
1 - зима - месяцы 12, 1, 2
2 - весна - месяцы 3, 4, 5
3 - лето - месяцы 6, 7, 8
4 - осень - месяцы 9, 10, 11
тогда функция принадлежности к сезону запишется как
C++
1
2
3
4
bool date_in_season(int x)
{
    return (month + 1) % 12 / 3 + 1 == x;
}
Добавлено через 10 секунд

а мне показалось что имеются ввиду
X =
1 - зима - месяцы 12, 1, 2
2 - весна - месяцы 3, 4, 5
3 - лето - месяцы 6, 7, 8
4 - осень - месяцы 9, 10, 11
тогда функция принадлежности к сезону запишется как
C++
1
2
3
4
bool date_in_season(int x)
{
    return (month + 1) % 12 / 3 + 1 == x;
}
Вот,как я реализовал эту функцию:
C++
1
2
3
4
5
6
7
8
cout<<"Введите номер сезона : ";cin>>tmp;
    for(int i=0;i<n;i++)
    {
        if(massiv[i].date_in_season(tmp))
        cout<<"Sezon "<<i+1<<"-oi dati prinadlejit zadannomy sezony"<<endl;
        else
        cout<<"Sezon "<<i+1<<"-oi dati ne prinadlejit zadannomy sezony"<<endl;
    }
Но она мне выводит не то.

Добавлено через 19 часов 19 минут
Помогите.
0
Модератор
3387 / 2159 / 352
Регистрация: 13.01.2012
Сообщений: 8,378
07.12.2012, 13:19 4
пардон, вот так
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
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 
#include <iostream>
 
bool date_in_season(int month, int x)
{
    return (month + 12) % 12 / 3 + 1 == x;
}
 
#pragma argsused
int main(int argc, char* argv[])
{
    for (int season = 1; season <= 4; season++)
        for (int month = 1; month <= 12; month++)
            std::cout << "season = " << season << " month = " << month << " date_in_season=" << (date_in_season(month, season)? "true" : "false") << std::endl;
 
    system("pause");
 
    return 0;
}
//---------------------------------------------------------------------------
Миниатюры
Создать класс для обработки информации о различных датах  
0
07.12.2012, 13:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.12.2012, 13:19
Помогаю со студенческими работами здесь

Создать класс для хранения календарных дат. Обеспечить возможность работы с датами в различных форматах
2. Создать класс для хранения календарных дат. Обеспечить возможность работы с датами в различных...

Создать класс который может быть использован для хранения информации и студентах
создать класс который может быть использован для хранения информации и студентах

Создать класс для обработки векторов разность векторов норму векторов
Создать класс для обработки векторов разность векторов норму векторов

Написать программу для обработки данных о различных товарах
Помогите оч оч срочно!! Зачёт (если можно полностью программу) Написать программу для обработки...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru