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

С++ классы. не могу создать производный клас нормально. - C++

Восстановить пароль Регистрация
 
raolze
Сообщений: n/a
20.12.2011, 21:34     С++ классы. не могу создать производный клас нормально. #1
помогите плиз.

у меня задания
вариант 19
Задание 1. Создать класс «Дата». Данные класса - день, месяц и год. Создать конструктор произвольной даты, конструктор по умолчанию и копирования, установите ограничения на значения полей (день от 1 до 30 или 31 (предусмотреть правильность ввода даты для каждого месяца), месяц от 1 до 12). Определите методы для вывода даты в цифровом виде (12.05 1992, 03.11 2004) и с использованием названий месяцев (12 May 1992, November марта 2004).
1. Определите объекты созданного типа, вызовите методы.
2. Определите динамический объект созданного типа, обратитесь к методам.
Задание 2. Создайте производный класс «Записная книга», в котором свяжите дату с некоторой важной вехой (день рождения друга, проведение консультаций по С + + и т.д.). Создайте массив объектов производного класса для внесения списка событий. Организуйте поиск даты некоторого события за ее названием, вывод списка событий, отсортированных по дате, вывод событий в указанном месяце.

вот первое задание я сделал. тоисть базовый клас создал. вот только производный как создать не понимаю, а именно как повязать дату с событием.
помогите,плиз, очень нада. на завтра(

вот мой клас
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
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#pragma argsused
#include <conio.h>
#include <ctype.h>
#include <stdio.h>
#include <iostream.h>
#include <ctype.h>
const j=10000;
class Data{
int day;
int month;
char *month1[j];
 
 
int year;
public:
Data  ( int da=03, int mon=12, int ye=1993) {
 
 day=da;
 month = mon;
year =ye;}
void display()
{
cout<< day<<"."<< month<<"."<< year<<endl;
}
void cufrovuy_vugljad()  {cout<<"Vvedit denj,misjac i rik"<<endl;
 
cin>>day>>month>>year;   if ( day>31||month>12)
cout<<"ne pravulnuy format vvedennja"<<endl;
else
cout<< day<<"."<< month<<"."<< year<<endl;}
 
 void vigljad_textovuy() {
int i; cout<<"Vvedit denj,misjac i rik"<<endl;          cin>>day>>i>>year;
if (day>31||i>12) cout<<"ne pravulnuy format vvedennja"<<endl;
 else {
month1[1]= "January";
month1[2]= "February";
month1[3]= "March";
month1[4]=  "April" ;
month1[5]=  "May";
month1[6]=   "June";
month1[7]=   "July";
month1[8]= "August"      ;
month1[9]=  "September"   ;
month1[10]= "October"       ;
month1[11]= "November"    ;
month1[12]= "December";
 
cout<< day<<" "<< month1[i]<<" "<< year<<endl; }
cufrovuy_vugljad();                                                           }
  
                        };
class notebook : Data
{    public :  char podija[j];
 
notebook (int da,int mon,int ye): Data (da,mon,ye){};
                         } ;
 
 
 
 
 
 
 
void main(){
Data X1;
X1.display();
Data X2(3,12,1993);
X2.display();
 
 Data X3=X2;
X3.display();
Data X4;
X4. cufrovuy_vugljad();
Data X5;
X5.vigljad_textovuy();
 
    getch();
}

я пытался создать производный,но не получяется((
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2011, 21:34     С++ классы. не могу создать производный клас нормально.
Посмотрите здесь:

Производный класс! Не могу понять в чем ошибка!! C++
C++ подскажите пожалуйста как создать клас
C++ создать клас HugeInt
Есть производный класс и базовый; при чём производный использует только ЧАСТЬ ресурсов базового, правильно ли это? C++
Как создать клас Fraction C++
C++ Создать производный класс Real
создать производный класс C++
Задача (разъяснение) в алгоритм (программа, используя базовый и производный классы, создавала массив объектов типа производного класса) C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
amor1k
Студент
 Аватар для amor1k
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
20.12.2011, 22:22     С++ классы. не могу создать производный клас нормально. #2
я не понял только одного, зачем в каждой функции вы сделали ввод, если можно все задать конструктором?
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
#include <conio.h>
#include <iostream.h>
using namespace std;
const int j=10000;
class Data{
    int day;
    int month;
    char *month1[j];
    int year;
public:
    Data ( int da=03, int mon=12, int ye=1993) {
 
        day=da;
        month = mon;
        year =ye;}
    void display()
    {
        cout<< day<<"."<< month<<"."<< year<<endl;
    }
    void cufrovuy_vugljad() {cout<<"Vvedit denj,misjac i rik"<<endl;
 
    cin>>day>>month>>year; if ( day>31||month>12)
        cout<<"ne pravulnuy format vvedennja"<<endl;
    else
        cout<< day<<"."<< month<<"."<< year<<endl;}
 
    void vigljad_textovuy() {
        int i; cout<<"Vvedit denj,misjac i rik"<<endl; cin>>day>>i>>year;
        if (day>31||i>12) cout<<"ne pravulnuy format vvedennja"<<endl;
        else {
            month1[1]= "January";
            month1[2]= "February";
            month1[3]= "March";
            month1[4]= "April" ;
            month1[5]= "May";
            month1[6]= "June";
            month1[7]= "July";
            month1[8]= "August" ;
            month1[9]= "September" ;
            month1[10]= "October" ;
            month1[11]= "November" ;
            month1[12]= "December";
 
            cout<< day<<" "<< month1[i]<<" "<< year<<endl; }
        cufrovuy_vugljad(); }
 
};
class notebook : public Data
{ public : char podija[j];
 
notebook (int da,int mon,int ye): Data (da,mon,ye){};
} ;
int main()
{
    notebook a(2, 4, 2222);
    a.display();
}
raolze
Сообщений: n/a
20.12.2011, 22:34     С++ классы. не могу создать производный клас нормально. #3
я подумал что нужно в каждой функции вводить заново дату,месяц... хз.
так как событие повязать с датой и вывести на екран?
int main()
{
notebook a(2, 4, 2222);
a.display();
выводит только дату, а событие?
я чото не доганяю((

Добавлено через 1 минуту
помогите плиз,у меня завтра здача курсовой,а я только 1 задание сделал((((((
а еще оформить, спать сьодня я не буду(
Yandex
Объявления
20.12.2011, 22:34     С++ классы. не могу создать производный клас нормально.
Ответ Создать тему
Опции темы

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