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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ANtaRi3l
0 / 0 / 0
Регистрация: 16.10.2012
Сообщений: 15
#1

Наследуемым классом для комплексного числа объявить класс "радиус-вектор", имеющий данные "длина" и "угол" - C++

18.10.2012, 10:22. Просмотров 874. Ответов 3
Метки нет (Все метки)

кто то напишите пожалуйста, вот программа: наследуемым классом для комплексного числа объявить класс "радиус-вектор", имеющий данные "длина" и "угол". Определить конструктор радиус-вектора. Вывести данные на экран с использованием метода базового класса.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.10.2012, 10:22     Наследуемым классом для комплексного числа объявить класс "радиус-вектор", имеющий данные "длина" и "угол"
Посмотрите здесь:

Дано натуральное число. Найти сумму последних "n" цифр "n" числа, не применяя переменых значений C++
C++ 2 Программы. На "целые числа и системы счисления" и на "метод деления отрезка пополам"
Как из масива "а" записать данные в масив "б" но в обратном порядке C++
C++ Класс "линия" наследуется классом "отрезок"
Абстрактный базовый класс "звонок" с виртуальной функцией "стоимость" C++
Два числа, действительное "a" и натуральное "n" вводятся с клавиатуры C++
C++ Иерархия: класс "карта", "колода карт"
Класс "Комплексные числа". Отсортировать массив по возрастанию модуля комплексного числа C++
C++ Класс "Задание" - Перенос "выполненного" задания из одного списка в другой
C++ Композиция классов "Матрица" и "Вектор"
Родительский класс "Геометрическая фигура", потомок "Конус" C++
C++ Найти угол одной точки "A" в соотношении к точке "B" в градусах

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1600 / 1228 / 121
Регистрация: 21.12.2010
Сообщений: 1,875
Записей в блоге: 7
18.10.2012, 12:02     Наследуемым классом для комплексного числа объявить класс "радиус-вектор", имеющий данные "длина" и "угол" #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
#include <iostream>
#include <cmath>
 
class Complex
{
public:
    Complex(double const re_, double const im_) : re(re_), im(im_){}
    friend std::ostream& operator<<(std::ostream& os, Complex const& cn)
    {
        return cn.Print(os);
    }
    virtual ~Complex(){}
protected:
    virtual std::ostream& Print(std::ostream& os) const
    {
        return os << '(' << re << ", " << im << ')';
    }
    double re, im;
};
 
class Rvector : public Complex
{
public:
    Rvector(double const length_, double const angle_) : Complex(length_ * cos(angle_), length_ * sin(angle_)), length(length_), angle(angle_){}
protected:
    std::ostream& Print(std::ostream& os) const
    {
        return Complex::Print(os)<< ", " << length << ", " << angle;
    }
    double length, angle;
};
 
const double pi = 3.141592653589;
 
int main()
{
    Rvector rv(7.0712, 7 * pi / 4);
    std::cout << rv << std::endl;
    return 0;
}
Герц
523 / 340 / 4
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
18.10.2012, 12:20     Наследуемым классом для комплексного числа объявить класс "радиус-вектор", имеющий данные "длина" и "угол" #3

Не по теме:

Интересно, кому взбрело в голову на таком примере показывать наследование. Максимум, что тут следует сделать - это создать еще один конструктор в классе Complex.


igorrr37, не уверен, что вариант соответствует заданию, так как данные требовалось вывести методом базового класса, а ты переопределил метод Print. Ведь можно было просто вызвать Complex::operator<< и вывести действительную и мнимую часть. Думаю это больше соответствует условию.
ANtaRi3l
0 / 0 / 0
Регистрация: 16.10.2012
Сообщений: 15
21.10.2012, 21:36  [ТС]     Наследуемым классом для комплексного числа объявить класс "радиус-вектор", имеющий данные "длина" и "угол" #4
спасибо большое, выручили)
Yandex
Объявления
21.10.2012, 21:36     Наследуемым классом для комплексного числа объявить класс "радиус-вектор", имеющий данные "длина" и "угол"
Ответ Создать тему
Опции темы

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