Complexos

Publicado por jorgyano bruno 04/09/2007

[ Hits: 5.185 ]

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

EXPRESSÕES ARITMÉTICAS - PARTE 2

Classico programa Hello World

Gerador de sequência numérica

Binário para decimal

Gerador de tabuada 1.0


  

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