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

Создать класс четырехугольников, квадратов и прямоугольников (иерархия) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Функция main () {} http://www.cyberforum.ru/cpp-beginners/thread608320.html
Есть разные варианты синтаксиса функции мэйн 1.void main () {} 2. int main () {return 0;} 3. int main() {} 4. main (void) {} 5. int main(int argc,char**argv) 6. int main(int argc,char*argv)
C++ Ошибка в значении переменной, передаваемой в функцию Странный вопрос конечно, ошибка в функции (верней число), но я не могу понять почему не работает правильно. #include <iostream> #include <conio.h> using namespace std; int Add (int x, int y){ cout << "В функции Add(), получено " << x << " и " << y << "\n"; return (x+y); } http://www.cyberforum.ru/cpp-beginners/thread608319.html
C++ Стеки- Ввести строку и вывести его в обратном порядке
Ввести строку и вывести его в обратном порядке через стеки.Очень срочно нада..
C++ Сформировать из матрицы вектор по правилу
Помогите решить: дана матрица А(NxN), записанная в бинарный файл. Структура файла следующая: сначала записано значение N, а затем матрица А. Сформировать вектор В по следующим правилам: если аii<0(i=2,...,n-1),в качестве bi взять сумму элементов i-той строки матрицы, предшествующих aii, в противном случае - сумму элементов строки, следующих за aii. Полученный вектор дописать в файл.
C++ Ошибка при запуске приложения (0xc0150002) http://www.cyberforum.ru/cpp-beginners/thread608290.html
Друзья! Прога нормально работала на XP. Потом я перешел на семёру: релиз нормально строится и запускается, а вот дебаг строится, но не запускается! Поиграл настройками студии - ничего. Погуглил - ничего вразумительного! Студия у меня 2005 - я вынужден использовать ее. Под 7 я установил ее нормально - SP1 и update по Vista(как рекомендовано поддержкой микрософта) Добавлено через 1 час 19...
C++ Передача лямбда в функции В чем смысл передачи лямбда выражения функции?auto square = (int x) { return x * x; }; std::cout << square(16) << std::endl;илиclass Foo { public: Foo(): _x(5) {} void doSomething() { auto lambda = (int x) { std::cout << _x * x << std::endl; }; подробнее

Показать сообщение отдельно
mad_svyat
17 / 17 / 0
Регистрация: 10.01.2012
Сообщений: 34
18.06.2012, 21:01     Создать класс четырехугольников, квадратов и прямоугольников (иерархия)
Вот так, например.
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
#include <iostream>
 
using namespace std;
 
class FourAngle {
public:
    FourAngle(float a = 0.0, float b = 0.0,
              float c = 0.0, float d = 0.0):
        sideA(a), sideB(b), sideC(c), sideD(d) { }
    virtual ~FourAngle() {}
    virtual float square() { cout << "Unable to calculate square!"
                                     " Unknown figure type";
                           return -1;
                           }
    virtual float perimeter() { return sideA+sideB+sideC+sideD; }
    virtual void print() { cout << "FourAngle: Sides: " << sideA
                                << ", " << sideB << ", " << sideC
                                << ", " << sideD << endl;
                         }
protected:
    float sideA;
    float sideB;
    float sideC;
    float sideD;
};
 
class Rectungle: public FourAngle {
public:
    Rectungle(float a = 0.0, float b = 0.0): FourAngle(a, b) { }
    ~Rectungle() {}
    float square() { return sideA*sideB; }
    float perimeter() { return 2*(sideA+sideB); }
    void print() { cout << "Rectungle: Sides: " << sideA
                        << ", " << sideB << endl << "Square: "
                        << square() << endl << "Perimeter: "
                        << perimeter() << endl;
                 }
};
 
class Square: public Rectungle {
public:
    Square(float a = 0.0): Rectungle(a) { }
    ~Square() {}
    float square() { return sideA*sideA; }
    float perimeter() { return 4*sideA; }
    void print() { cout << "Square: Side: " << sideA << endl
                        << "Square: " << square() << endl
                        << "Perimeter: " << perimeter() << endl;
                 }
};
 
int main()
{
    FourAngle f;
    Rectungle rec(8, 6);
    Square sq(8);
    f.print();
    cout << endl;
    rec.print();
    cout << endl;
    sq.print();
 
    return 0;
}
 
Текущее время: 04:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru