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

Классы, комплексные числа и перегрузка оператора - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Немогу написать программу что б считало сначало до 50, потом до 125, 225, 400, 750, 1000, 2000, 10000. http://www.cyberforum.ru/cpp-beginners/thread749399.html
Немогу написать программу что б считало сначало до 50, потом до 125, 225, 400, 750, 1000, 2000, 10000. Пример: я ввожу число 791 и мне сначало считает до 50... Тоесть 791-50=741, 741-225=516, 516-400=116 и писало 116(750).
C++ Работа в С++ с файлами .txt Доброго времени суток. Я хотел бы получить консультацию по таком вопросу: что нужно сделать, чтобы в файле OUTPUT.TXT выводился не первый рядок, который задан в файле INPUT.TXT, а например, 3. код программы: #include <iostream> #include <math.h> int main() { freopen("INPUT.TXT", "r", stdin); freopen("OUTPUT.TXT", "w", stdout); int a,b; http://www.cyberforum.ru/cpp-beginners/thread749373.html
Сортировка : ( C++
Это задание для тех, кто начал учить с++ месяц назад(так рассчитано в нашем универе) я просто хз как это делать, помогите) Имеется массив из n чисел от 0 до , каждое из которых мы будем рассматривать как k битовое слово. Используя проверки "i-ый бит равен 0" и "i-ый бит равен 1" вместо сравнений, отсортировать все числа за время порядка n*k.
Представить цикл в математическом виде C++
подскажите, здесь же есть ошибка? x=0; for(j=1; j<=n; j++) x=x+2; x=2*x; это надо представить в математическом виде. Перенесено из http://www.cyberforum.ru/cpp-beginners/thread749292.html
C++ Дано два целочисленных массива Сформировать новый массив, который содержит элементы первого массива, которых нет во втором http://www.cyberforum.ru/cpp-beginners/thread749328.html
Полное условие: Дано два целочисленных массива, состоящих из неповторяющихся чисел. Сформировать новый массив, который содержит элементы первого массива, которых нет во втором массиве (массив-разность). Массив должен заполняться с клавиатуры.
C++ Строки. Вставить пробел после каждой нечетной буквы в слове 1) Дано слово, посчитать, сколько раз входит в него сочетание «he» (Уже составил, см.ниже); 2) Нужно вставить в слове после каждой, стоящей на нечетном месте, пробел; 3) Потом вычеркнуть из слова все буквы e, стоящие после h. #include <iostream> #include <cstring> #include <cstdio> using namespace std; подробнее

Показать сообщение отдельно
Excluz1ve
0 / 0 / 0
Регистрация: 16.09.2012
Сообщений: 18

Классы, комплексные числа и перегрузка оператора - C++

29.12.2012, 03:42. Просмотров 3212. Ответов 7
Метки (Все метки)

Составить описание класса для представления комплексных чисел. Обеспечить вы-
полнение операций сложения, вычитания и умножения комплексных чисел. Операции
организовать в виде перегруженных операторов. Написать программу, демонстри-
рующую работу с этим классом.

Имееться код, но выводит неясные ошибки.
Комплятор просит поменять воид на инт что мне не нужно.
в остриме выводит какието ошибки.

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
115
116
117
118
119
120
121
122
123
124
#include <iostream>
#include <conio.h>
#include <math.h>
#include <stdio.h>
 
using namespace std;
 
class Komplex
 
    {
    private:
        double real;
        double image;
 
    public:
        Komplex() {};
        Komplex(double r)
         { real = r;
          image = 0; } // Конструктор
        Komplex(double r, double i,double a)
         { real = r,
          image = i; }   // Конструктор
        ~Komplex() {}   // Деструктор
        Komplex operator+(Komplex &);   // Перегрузка оператора сложения
        Komplex operator-(Komplex &);   // Перегрузка оператора вычитания
        Komplex operator*(Komplex &); // Перегрузка оператора умножения
        Komplex operator*(double &c); // Перегрузка оператора умножения на Cons
        double& operator[](int s);
        friend Komplex operator*(double &c , Komplex &);// Перегрузка оператора умножения Const на комплексное число
        friend ostream &operator<<(ostream &, Komplex &);
        friend istream &operator>>(istream &, Komplex &);
    };
Komplex Komplex::operator+(Komplex &fp1)
    {
        fp1.real = real + fp1.real;
        fp1.image = image + fp1.image;
        return fp1;
    }
Komplex Komplex::operator-(Komplex &fp1)
    {
 
        fp1.real = real - fp1.real;
        fp1.image = image - fp1.image;
        return fp1;
    }
Komplex Komplex::operator*(Komplex &fp1)
    {
        double i, j;
        i = real * fp1.real - image * fp1.image;
        j = real * fp1.image + fp1.real * image;
        fp1.real = i;
        fp1.image = j;
        return fp1;
    }
Komplex Komplex::operator*(double &c)
{
Komplex fp1;
double i, j;
i = real * c;
j = image * c;
fp1.real = i;
fp1.image = j;
return fp1;
}
Komplex operator*(double &c, Komplex &fp1)
{
Komplex fp2;
double i, j;
i = c * fp1.real;
j = c * fp1.image;
fp2.real = i;
fp2.image = j;
return fp2;
}
double &Komplex::operator[](int s)
{
    if(s==0) return real;
    if(s==1) return image;
}
 
ostream &operator<< (ostream &fo, Komplex &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, Komplex &fp)
 {
        cout << "Введите реальную часть: ";
        fi >> fp.real;
        cout << "Введите мнимую часть: ";
        fi >> fp.image;
        return fi;
 }
 
void main()
{
    setlocale(LC_ALL, "Russian");
    Komplex k1, k2, k3;
    double s;
    double c;
    cin >> k1;
    cin >> k2;
    cout<<"Введите действительное число: ";
    cin >> s;
    k3=k2;
    cout << "Первое комплексное число = " << k1;
    cout << "Второе комплексное число = " << k2;
    cout << "Действительное число = " << s<<endl;
    cout << "k1 + k2 = " <<k1+k2;
    k2=k3;
    cout << "k1 - k2 = " <<k1-k2;
    k2=k3;
    cout << "k1 * k2 = " <<k1*k2;
    k2=k3;
    cout << "const * k1 = "<< k1*s;
    cout << "k1 * const = "<< s*k1;
    k1[0]=6;
    k1[1]=15;
    cout << "Новое комплексное число = " <<k1[0];
    cout<<"+i";
    cout<<k1[1];
system("pause");
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru