Classe para manipulação de números complexos
Publicado por Humberto Henrique Campos Pinheiro 07/02/2006
[ Hits: 12.547 ]
Fiz essa classe bem simples para estudar o uso de sobrecarga de operadores, já que estou na transição c -> c++.
/******* CABEÇALHO *******************/ //interface da classe complex - números complexos #ifndef COMPLEX_H //evita múltiplas inclusões #define COMPLEX_H class Complex{ private: double real; double img; public: //construtor Complex(); //imprime void imprime(); //configura os valores do número void set(int,int); //sobrecarga de operador + Complex operator+(Complex); //sobrecarga do operador - Complex operator-(Complex); }; #endif /*********Implementação**************/ //Implementação da classe Complex #include "complex.h" #include <iostream> using namespace std; //construtor Complex::Complex() { real=0; img=0; } //imprime o número complexo void Complex::imprime() //sugestãop: sobrecarregar operador << e >> { cout << real << " + " << img << "i" << endl; //cout << "(" << real << "," << img << ")" <<endl; } //configura o número complexo void Complex::set(int rl, int im) { real=rl; img=im; } //sobrecarga do operador + Complex Complex::operator+(Complex b) { Complex c; c.real=real + b.real; c.img=img + b.img; return c; } //sobrecarga do operador - Complex Complex::operator-(Complex b) { Complex c; c.real=real - b.real; c.img=img - b.img; return c;
Parte 3 - Sessão de estudo sobre MATRIZES.
Ordenar vetor com algoritmo Insertion Sort
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
O que você quer para sua vida ao usar o Linux?
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Audio intermitente xubuntu notebook positivo c14 vision (0)
Encontrar o comando completo de uma janela [RESOLVIDO] (2)
Instalação de Ubuntu em SSD (interno) como se fosse um dispositivo ext... (2)
Zorin OS - Virtual Box não consigo abrir maquinas virtuais (10)