Classe para manipulação de números complexos
Publicado por Humberto Henrique Campos Pinheiro 07/02/2006
[ Hits: 12.354 ]
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;
Resolução de uma fórmula de mátemática
Tabela hash com classes e tratamento de colisões por encadeamento
Atenção a quem posta conteúdo de dicas, scripts e tal (6)
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
O mínimo que você precisa saber sobre o terminal (parte 2)
O mínimo que você precisa saber sobre o terminal (parte 1)
Como iniciar uma máquina virtual do VirtualBox automaticamente no boot do LUbuntu 18 LTS
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como deixar as abas do Firefox mais fininhas
Mudar o gerenciador de login (GDM para SDDM)
"Tentando" fazer com que programas rodem no Wayland e no X11
Porblema com MergeList [RESOLVIDO] (10)
Melhor hospedagem em nuvem para projetos Laravel com baixo custo? [RES... (7)
Como baixar os drivers de áudio no linux mint? (7)
Como posso localizar o arquivo HTML da página inicial do GLPI dentro d... (2)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta