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

Наследование - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ доработать программу с массивами http://www.cyberforum.ru/cpp-beginners/thread666375.html
Помогите пожалуйста кое что переделать,сам не могу понять как это сделать.1-добавить в меню(при вводе должно вылезать вводить самому или компьютеру?)2.Сделать так чтобы после ввода элементов массива,при нажатии 2 или 3 вылазила ошибка-у вас нет массива. #include "stdafx.h" #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <locale.h> int _tmain(int argc, _TCHAR* argv) {...
C++ Ввод строки типа {a,b,c,d,f,{a,b,c,f},g,h,j}, исправить код Доброго времени суток всем, в общем нужно мне реализовать такую задачу: Ввод строки типа {a,b,c,d,f,{a,b,c,f},g,h,j} Что должно быть на выходе: а именно, создаётся множество которое содержит элементы a,b,c,d....элемент-множество {a,b,c,f}. У меня реализовано всё чтобы множество могло содержать другое множество и прочие фишечки. Но вот этот пункт,парсить эту строку, не знаю как сделать. Как я... http://www.cyberforum.ru/cpp-beginners/thread666372.html
C++ Нужно написать программу со строками
Пожалуйста помогите написать программу, которая будет подсчитывать количество заглавных букв в строке, введенной с клавиатуры. e. выполнить пункты a и b на оценку 4 балла. f. реализовать меню пользователя, состоящее как минимум из 4-х пунктов: a. ввод данных; b. обработка данных; c. вывод результата на экран; d. выход. g. Для корректной работы меню организовать промежуточное хранение...
C++ Сумма ряда до точность E
Четвёртый член ряда равен 0.001411 (можете проверить запустив программу) Вопрос: почему не срабатывает строчка (последняя) if(E<b) printf("Sum ryada do tochnosty %f ravna: %f\n", E, w); Когда 0.0001<0.001411? #include <iostream> #include <stdio.h> #include <math.h> using namespace std; int function();
C++ Обьясните, пожалуйста, строчки http://www.cyberforum.ru/cpp-beginners/thread666327.html
CRect rect; GetWindowRect(&rect); rect.OffsetRect(20,20); if (pic_wnd) delete pic_wnd; pic_wnd = new CPicWnd; pic_wnd->some = this; pic_wnd->CreateEx(NULL, "", "", WS_VISIBLE|WS_OVERLAPPEDWINDOW, rect, this, 0);
C++ Реализовать класс Account, представляющий собой банковский счет Б15.12 Реализовать класс Account , представляющий собой банковский счет. В классе должны быть реализованы 4 поля: фамилия владельца, номер счета, процент начисления и сумма в рублях. Необходимо выполнять следующие операции: сменить владельца счета, снять некоторую сумму со счета, положить деньги на счет, начислить проценты, перевести сумму в доллары, перевести сумму в евро, ... подробнее

Показать сообщение отдельно
f1-forever
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 6
08.10.2012, 18:54     Наследование
Мне нужно переделать класс CLine так чтобы он наследовал два объекта CPoint, а не один как в данном случае. Вот пример кода:
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
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <iostream.h>
 
#define N 30
class CPoint              
{
protected:
    float X,Y;
public:
    CPoint(float aX,float aY);
    ~CPoint(){}
    float GetX();   
    float GetY();
    
};
 
class CLine:public CPoint
{
public:
    CLine(float aX,float aY,float bX,float bY);
    ~CLine(){}
    void IsPointOn(float aX,float aY,float bX,float bY,float c[30][2],int n);
};
 
CPoint::CPoint(float aX,float aY)
{
    X=aX;
    Y=aY;
}
 
float CPoint::GetX()
{
    return X;
}
float CPoint::GetY()
{
    return Y;
}
CLine::CLine(float aX,float aY,float bX,float bY):CPoint(aX,aY)
{
}
void CLine::IsPointOn(float aX, float aY,float bX, float bY,float c[][2],int n)
{
     for(int i=0;i<n;i++)
             if ( 
             (aY-bY)*c[i][0]+(bX-aX)*c[i][1]+(aX*bY-aY*bX)==0 
             && ( aX<c[i][0] && c[i][0]<bX ) || ( aX>c[i][0] && c[i][0]>bX )
             && ( aY<c[i][1] && c[i][1]<bY ) || ( aY>c[i][1] && c[i][1]>bY ) 
             )
                 cout<<"resultat x="<<c[i][0]<<" y="<<c[i][1]<<endl;
             else
                 cout<<"no points"<<endl;
                    
}
int main()
{
    int i,n;
    float x1,y1,x2,y2,c[N][2];
 
    x1=y1=x2=y2=0;
    
    CLine a = CLine(x1,y1,x2,y2);
 
    cout<<"Enter x,y for A"<<endl;
    cin>>x1>>y1;
    cout<<"Enter x,y for B"<<endl;
    cin>>x2>>y2;
    while( x1==x2 && y1==y2 )
    {
        cout<<"error,A=B"<<endl;
    }
    cout<<"vvedite N"<<endl;
    cin>>n;
    if (n<0)
       cout<<"N must be positive\n"<<endl;
    else
        for(i=0;i<n;i++)
        {
                        cout<<"vvedite x,y tochki C"<<endl;
                        cin>>c[i][0]>>c[i][1];
        }
        a.IsPointOn(x1,y1,x2,y2,c,n);
    getch();
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru