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

Помогите с Объектно Ориентированным Программированием. Комплексные числа - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ ООП. Косплексные числа и операции. http://www.cyberforum.ru/cpp-beginners/thread357507.html
Всем доброго времени суток. Помогите пожалуйста с задачей. Создать класс комплексное число и реализовать операции сложения, вычитания, умножения, деления, перевод из строки в компелксное число. // Komplex.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <stdio.h> #include <conio.h> #include "string.h"
C++ Maya APi, ошибка "Cannot open include file. No such file or directory" Помогите плз кто знает искал не нашол решения. f:\project\test\basicswshader1\basicswshader.h(20) : fatal error C1083: Cannot open include file: 'maya/MIOStream.h': No such file or directory Как можно решить эту проблему? http://www.cyberforum.ru/cpp-beginners/thread357494.html
C++ вывести на экран границы целочисленных типов
вывести на экран границы целочисленных типов. При этом нельзя применять константы границ типов, определенных в файле limits.h
Создание службы которая будет выводить на рабочий стол Надпись C++
Необходимо на visual studio написать службу которая будет выводить на рабочий стол надпись
C++ Определить, попадает ли точка в заштрихованную область http://www.cyberforum.ru/cpp-beginners/thread357486.html
задали координаты точки (х,у) на плоскости, определить попадает ли точка в заштрихованную область на рисунке. Принадлежность точки границы понимать как принадлежность области.
C++ Даны три числа, упорядочить их по возрастанию (не используя массивы) дано 3 числа. упорядочить их по возрастанию при этом не использовать циклы и массивы. подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
28.09.2011, 15:49     Помогите с Объектно Ориентированным Программированием. Комплексные числа
Цитата Сообщение от Delllinger Посмотреть сообщение
Нужно разработать класс для работы с комплексными числами (2 поля - действительное и мнимое)
Методы: Сложение, вычитание и умножение, вывод на эран. Всё с использованием конструктора
CComplex.h
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
#ifndef CCOMPLEX_H
#define CCOMPLEX_H
 
#include <stdio.h>
 
class CComplex
{
private:
    float re;
    float im;
public:
    CComplex(){re = 0; im = 0;};//конструктор по умолчанию
    CComplex(float _re = 0, float _im = 0){re = _re; im = _im;};//конструктор преобразования
 
    //Кроме = не использую &
    //т.к  = единсвенный оператор который может изменять значение исходной переменной
    //после всех остальных операторов переменные не должны терпеть изменений
    CComplex operator + (CComplex val)
    {
        return CComplex(re + val.re,im + val.im);
    }
    CComplex operator - (CComplex val)
    {
        return CComplex(re - val.re,im - val.im);
    }
    CComplex operator * (CComplex val)
    {
        return CComplex
            (
                re*val.re - im*val.im, 
                im*val.re + re*val.im
            );
    }
    CComplex &operator = (float val)
    {
        re = val;
    }
    CComplex &operator = (CComplex val)
    {
        re = val.re;
        im = val.im;
        return CComplex(re,im);
    }
    void Show()
    {
        printf("%.f + j*(%.f)\r\n",re,im);
    }
};
 
#endif
main.cpp
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "CComplex.h"
#include <conio.h>
 
int main()
{
    CComplex a = 5.2;//5.2 + j*0
    CComplex b(5.3,6.3);
    printf("a = ");a.Show();
    printf("b = ");b.Show();
 
    printf("a + b = ");(a + b).Show();
    CComplex c = a + b;
    c = (c * a);
    printf("c * a = ");c.Show();
    getch();
    return 0;
}
a = 5 + j*(0)
b = 5 + j*(6)
a + b = 11 + j*(6)
c * a = 55 + j*(33)

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