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

Комплексные числа. Реализовать класс и математические операции - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Функция не принимает параметр http://www.cyberforum.ru/cpp-beginners/thread1120055.html
Есть структура: struct tovar { char name_prod; char country_prod; int number_prod; }; Есть программа: char program_search_country()
C++ Замена "," в файле на "." Доброго времени суток!! Возник вопрос , как заменить запятую в файле на точку? Просто vector<double> оказывается не поддерживает запятую)) http://www.cyberforum.ru/cpp-beginners/thread1120034.html
C++ вставка кода на ассемблере
РЕБЯЯЯЯЯЯТ:(Может кто-нибудь помочь?:( Необходимо,написать программу на с++ с вставкой кода на ассемблере.. в одномерном массиве, состоящем из n элементов, вычислить: сумму модулей элементов массива, расположенных после первого элемента, равного нулю.
Количество символов в строке C++
String.h class String { public: String(); ~String(); void AddText(); int Whole(); private: string textline;
C++ Ввести строку. На печать выдать слова, имеющие в своём составе сочетание букв «но» http://www.cyberforum.ru/cpp-beginners/thread1120022.html
#include <stdio.h> #include <conio.h> #include <string.h> using namespace std; int main() { char *fgets(string, n); char c1,c2;
C++ Даны действительные числа X,Y. Вычислить значение Z 2)Даны действительные числа X,Y. Вычислить Z: Y = {█(x-y,если x>y@y-x+1 в противном случае )┤ подробнее

Показать сообщение отдельно
AGS17
7 / 5 / 1
Регистрация: 03.11.2012
Сообщений: 74
17.03.2014, 01:35     Комплексные числа. Реализовать класс и математические операции
Ты должен перегрузить оператор >> для твоего класса complex.
Покажу тебе сразу перегрузы для ввода и вывода,что бы не было лишних вопросов.

Это нужно добавить в класс:
C++
1
2
    friend ostream &operator<< (ostream&, const complex&); // обязательно объявление дружественной функцией
    friend istream &operator>> (istream&, complex&);
а это после класса как описание функций класса:
C++
1
2
3
4
5
6
7
8
9
10
11
12
ostream &operator<< (ostream &output, const complex &source)
{
    output << source.m_a << " + " << source.m_b << "*i";
    return output;
}
istream &operator>> (istream& input, complex &source)
{
    double a, b;
    input >> a >> b;
    source = complex(a, b);
    return input;
}
и в итоге мэйновская ф-ция будет упрощена:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void main()
{
complex firstComplex, secondComplex;                                   
cout << "Input first complex: ";                  
cin >> firstComplex;                 
cout << "Input second complex: ";
cin >> secondComplex;
cout << "Your comlex numbers:" << endl
       << firstComplex << endl;
       << secondComplex << endl;
cout << "Addition:" << endl
       << (firstComplex + secondComplex) << endl;
cout << "Subtraction:" << endl
       << (firstComplex - secondComplex) << endl;
cout << "Multiplication:" << endl
       << (firstComplex * secondComplex) << endl;
}
К слову говоря, ф-цию print() можешь смело выкидывать из класса
 
Текущее время: 17:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru