Complexos
Publicado por jorgyano bruno 04/09/2007
[ Hits: 4.766 ]
Classe que realiza operações como adição, subtração, multiplicação, divisão, multiplicação por um escalar e divisão por escalar com números complexos.
/* Jorgyano Bruno de Oiveira Vieira */ #include <iostream> #include<math.h> using namespace std; class Complexo{ private: float real; float img; public: Complexo(); Complexo(float _real, float _img); void print(); void set(float,float); void conjugado(); Complexo operator+(Complexo); Complexo operator-(Complexo); Complexo operator*(Complexo); Complexo operator*(int); Complexo operator/(Complexo); Complexo operator/(int); }; Complexo::Complexo() { real=0; img=0; } Complexo::Complexo(float _real, float _img){ real = _real; img = _img; } void Complexo::print() { cout << real << " + " << img << "i" << endl; } void Complexo::set(float rl, float im) { real = rl; img = im; } void Complexo::conjugado(){ img = (-1)*img; } Complexo Complexo::operator+(Complexo b) { Complexo c; c.real = real + b.real; c.img = img + b.img; return c; } Complexo Complexo::operator-(Complexo b) { Complexo c; c.real = real - b.real; c.img = img - b.img; return c; } Complexo Complexo::operator*(Complexo b){ Complexo c; c.real = (real*b.real) - (img*b.img); c.img = (real*b.img) + (img*b.real); return c; } Complexo Complexo::operator*(int b){ Complexo c; c.real = b*real; c.img = b*img; return c; } Complexo Complexo::operator/(Complexo b){ Complexo c; c.real = (real*b.real) + (img*b.img)/(pow(b.img,b.img) + pow(b.real,b.real)); c.img = (b.real*img) - (real*b.img)/(pow(b.img,b.img) + pow(b.real,b.real)); } Complexo Complexo::operator/(int b){ Complexo c; c.real = b/real; c.img = b/img; return c; } int main(){ Complexo a(4,-5), b, c; a.conjugado(); b = a; c=a+b; cout<< "a+b = ";c.print(); c=a/b; cout << "a/b = ";c.print(); c=a*b; cout<<"a*b = ";c.print(); c = a*3+b/2; cout <<"a*3+b/2 = ";c.print(); system("pause"); }
Jogo do adivinha para descontrair..
Estrutura de dados em C -> Pilhas
Nenhum comentário foi encontrado.
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin
Criando um Pen Drive Bootável no Linux
Sistema da Coréia do Norte - Red Star OS (43)
Dualboot Fedora 40 e LinuxMint 21 (6)