Complexos

Publicado por jorgyano bruno 04/09/2007

[ Hits: 4.765 ]

Download Complexos.cpp




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.

  



Esconder código-fonte

/*
    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");
}
   

Scripts recomendados

Qual seu signo?

Triângulo de Pascal

Multiplicação de matrizes

Pesquisa da Prefeitura

Cálculo do fatorial


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts