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

Базовый класс Complex и производный класс Vector - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Алгоритм по типу экселевского vlookup. Посоветуйте, как скомпоновать 2 файлика http://www.cyberforum.ru/cpp-beginners/thread745457.html
Hi all. Думаю, как лучше сделать следующее (понятно, что можно в Excel'е через vlookup, а как программно?) в общем, есть колонка данных в одном файле: 101 : name1 102 : name2 103 : name3 104 : name4 105 : name5
C++ Ввести данные структуры, и если на входе пустая строка, функция возвращает "ноль" (Прокомментировать каждую строку) Друзья, прокоментируйте пожалуйста, что каждая строка делает, что за переменные и т.д. задание такое было: написать функцию, которая принимает в качестве аргумента структуру, а возвращает целое значение. Данная функция должна предлагать пользователю ввести данные структуры, и если он вводит пустую строку, то функция возвращает "ноль", и функция прерывает свою работу. #include "stdafx.h"... http://www.cyberforum.ru/cpp-beginners/thread745430.html
как проверить введенную строку на принадлежность к английскому алфавиту? C++
собственно вопрос.
Тест простоты для БОЛЬШИХ чисел (тест Ферма) C++
Необходимо применить ТЕСТ ФЕРМА для больших чисел с использованием библиотеки bignum, кто нибудь работал с ней? Начал делать, но остановился на этом моменте.. Visual 2010 ССЫЛКА на мои файлы + bignum.h #include "bignum.h" #include <stdlib.h> #include <iostream> #include <conio.h> using namespace std;
C++ Создайте класс SatelliteTV http://www.cyberforum.ru/cpp-beginners/thread745372.html
Создайте класс SatelliteTV (спутниковое телевидение). В классе должны быть представлены поля: идентификационный номер абонента, фамилия-имя-отчество, город, номер паспорта, серия паспорта, наименование пакета спутниковых программ, цена пакета спутниковых программ, дата регистрации. Доступ к полям класса организовать посредством соответствующих методов. Разработать программу, в которой создается...
C++ Ошибки в коде (проверить) прога выдает ошибки: 1>c:\users\ххх\documents\visual studio 2010\projects\lab4.1\lab4.1\lab4.1.cpp(112): warning C4552: *: оператор не имеет результата; требуется оператор с побочным действием 1>MSVCRTD.lib(crtexe.obj) : error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup 1>c:\users\ххх\documents\visual studio 2010\Projects\lab4.1\Debug\lab4.1.exe : fatal... подробнее

Показать сообщение отдельно
igdev
24 / 24 / 6
Регистрация: 22.04.2016
Сообщений: 117
Завершенные тесты: 1
09.05.2016, 00:06     Базовый класс Complex и производный класс Vector
Мне дано аналогичное задание, только с меньшим набором операций, т.е. нужно реализовать только суммирование и вычитание комплексных чисел. Данную задачу я выполнил (реализовал).
Аналогично, как и автор темы, не могу понять как передать комплексные числа в производный класс и записать/добавить их в вектор. Пересмотрел на форуме множество тем, но так и не смог найти ответ на свой вопрос.
Подскажите, пожалуйста, как решить данную задачу (передать комплексные числа в производный класс и записать/добавить их в вектор)? Или подскажите алгоритмом.

Свой код прилагаю:

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 <iostream>
#include <vector>
#include <iterator>
#include <cmath>
#include <clocale>
 
 
 
using namespace std;
 
class ComplexNumber
{
 
public:
    double real; // Действительнаня часть
    double image; // Мнимая часть
 
    ComplexNumber(double re = 0, double im = 0) // Конструктор
    {real = re, image = im;}
 
    ComplexNumber operator+(const ComplexNumber &); // Сложение комплексных чисел
    ComplexNumber operator-(const ComplexNumber &); // Вычитание комплексных чисел
 
    friend ostream &operator<<(ostream &, const ComplexNumber &); // Вывод комплексных чисел
    friend istream &operator>>(istream &, ComplexNumber &); // Ввод комплексных чисел
};
 
// Сложение комплексных чисел /Перегрузка +/
ComplexNumber ComplexNumber::operator+(const ComplexNumber &CN)
{
    ComplexNumber t(*this);
    t.real += CN.real;
    t.image += CN.image;
    return t;
}
 
// Вычитание комплексных чисел /Перегрузка -/
ComplexNumber ComplexNumber::operator-(const ComplexNumber &CN)
{
    ComplexNumber t(*this);
    t.real -= CN.real;
    t.image -= CN.image;
    return t;
}
 
// Вывод комплексных чисел /Перегрузка <</
ostream &operator<< (ostream &fo, const ComplexNumber &fp )
{
    if (fp.image < 0) fo << fp.real << "+i(" << fp.image << ")\n";
    else fo << fp.real << "+i" << fp.image << "\n";
    return fo;
}
 
// Ввод комплексных чисел /Перегрузка >>/
istream &operator>>(istream &fi, ComplexNumber &fp)
{
    fi >> fp.real;
    fi >> fp.image;
 
    return fi;
}
 
 
 
 
class IntegratedVector : public ComplexNumber
{
public:
 
    IntegratedVector(double re, double im) : ComplexNumber(re, im)
    {};
    vector<double> compVector; // создаем пустой вектор
 
    void addToVector(double re, double im); // Добавление элементов в вектор
    void showVector(double re, double im); // Вывод элементов вектора на экран
};
 
// Добавление элементов в вектор
void IntegratedVector::addToVector(double re, double im)
    {
        compVector.insert(compVector.end(), re);
        compVector.insert(compVector.end(), im);
    }
 
// Вывод элементов вектора на экран
void showVector(double re, double im)
{
    copy(compVector.begin(),
         compVector.end(),
         ostream_iterator<double>(cout," ")
         );
}
 
int main()
{
    setlocale(0,"");
 
    ComplexNumber num1, num2, num3;
    cout << "1 число, введите действительную и мнимую части через пробел: ";
    cin >> num1;
    cout << "2 число, введите действительную и мнимую части через пробел: ";
    cin >> num2;
    cout << "3 число, введите действительную и мнимую части через пробел: ";
    cin >> num3;
 
    cout << "\nnum1 = " << num1;
    cout << "num2 = " << num2;
    cout << "num3 = " << num3 << '\n';
 
    cout << "num1 + num2 + num3 = " << num1 + num2 + num3;
    cout << "num1 - num2 - num3 = " << num1 - num2 - num3;
 
    return 0;
}
 
Текущее время: 00:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru