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

Перегрузка оператора вывода - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Передача массивов в функцию http://www.cyberforum.ru/cpp-beginners/thread1017084.html
Добрый день! Помогите, срочно надо! Передача массивов в функцию (многомерные массивы) Дана матрица А(4,5), В(5,6). Вычислить сумма максимальных элементов каждой строки матрицы. Заранее благодарен!
C++ Для каждой строки подсчитать сумму элементов, не попадающих в заданный интервал дан массив размером nхn, элементы которого целые числа. Для каждой строки подсчитать сумму элементов, не попадающих в заданный интервал, и записать данные в новый массив. http://www.cyberforum.ru/cpp-beginners/thread1017077.html
C++ Когда используется * перед указателями, а когда нет?
Вообщем я запутался и не пойму, когда нужно перед указателем ставить "*", а когда нет. Как я понял, "*" ставится перед указателем, когда мы обращаемся к данным (значение), а без "*", когда обращаемся к адресу или не так? Объясните, пожалуйста.
C++ ребят, напишите программу(массивы) пож-та!
дана последовательность целых чисел. Вывести на экран номера всех элементов, не попадающих в заданный интервал. Решить использую сначала одномерный, а затем двумерный массив.
C++ Вычислить сумму элементов массива, которые являются степенями пятерки и индексы которых есть нечетные числа. http://www.cyberforum.ru/cpp-beginners/thread1017060.html
Вычислить сумму элементов массива, которые являются степенями пятерки и индексы которых есть нечетные числа. помогите написать программу с помощи с++
C++ Индекс находился вне границы массива Подскажите , что сделано не так , если при вводе значения больше 2-ух , он выдает ошибку "Индекс находился вне границы массива". Задача звучит так . Дано действительное число E>0 . Последовательность a1,a2... образована по след. закону : a:=n/(sqrt(n*n+1)-sqrt(n*n-1)); . Найти первый член an(n>=2) для которого выполнено условие a-a>E. подробнее

Показать сообщение отдельно
kobzon
0 / 0 / 0
Регистрация: 06.03.2013
Сообщений: 13
24.11.2013, 13:40  [ТС]     Перегрузка оператора вывода
number.h
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#pragma once
#include "iostream"
class number
{
public:
    double re,im,re1,im1;
public:
    number(void);
    number(double);
    ~number(void);
    number& operator*(number&);
    number& operator/(number&);
    friend ostream& operator<<(ostream&,number&);
};


number.cpp
Кликните здесь для просмотра всего текста
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
#include "stdafx.h"
#include "iostream"
#include "number.h"
using namespace std;
 
number::number(void)
{
    cout<<"Введите действ. часть: ";
    cin>>re;
    cout<<"Введите мнимую часть: ";
    cin>>im;
}
 
number::number(double c)
{
    re=0;
    im=0;
}
 
number::~number(void)
{
}
 
number& number::operator*(number& p)
{
    re1=re*p.re-im*p.im;
    im1=im*p.re+re*p.im;
    return *this;
}
 
number& number::operator/(number& p)
{
    re1=(re*p.re+im*p.im)/(p.re*p.re+p.im*p.im);
    im1=(im*p.re-re*p.im)/(p.re*p.re+p.im*p.im);
    return *this;
}


Главный файл
Кликните здесь для просмотра всего текста
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
#include "stdafx.h"
#include "iostream"
#include "number.h"
#include "conio.h"
using namespace std;
 
ostream& operator<<(ostream& s,number& p)
{
    if(p.im>0)
        s<<p.re<<"+i"<<p.im;
    if(p.im<0)
        s<<p.re<<"-i"<<(-1*p.im);
    if(p.im==0)
        s<<p.re;
    return s;
}
 
 
int menu()
{
    cout<<"1.Умножение"<<endl;
    cout<<"2.Деление"<<endl;
    cout<<"3.Выход"<<endl;
    int k;
    cin>>k;
    return k;
}
int main()
{
    setlocale(0,"rus");
    while(true)
    {
    switch (menu())
    {
    case 1: 
        {
            number a,b,c(0); c=a*b; cout<<c; break;
        }
    case 2: 
        {
            number a,b,c(0); c=a/b; cout<<c; break;
        }
    case 3: return 0;
    default:
        break;
    }
    _getch(); system("cls");
    }
    return 0;
}
 
Текущее время: 05:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru