#include <conio.h>
#include <math.h>
#include <iostream>
#include <stdlib.h>
using namespace std;
class complejo{
private:
double r,i;
public:
complejo(){
r=0.0;
i=0.0;
}
complejo(double real, double imaginario){
r=real;
i=imaginario;
}
void setRealImaginario(double real,double imaginario){
r=real;
i=imaginario;
}
double getReal(){
return r;
}
double getImaginario(){
return i;
}
void imprimeRectangular(){
if(r!=0&&i!=0){
cout <<"\n" << r << "," << i << "i";
}
else if(r==0&&i!=0){
cout <<"\n" << i <<"i";
}
else if(r!=0&&i==0){
cout <<"\n" << r;
}
else{
cout <<"\n0";
}
}
double sumaRectangular(double real1, double imaginario1, double real2, double imaginario2){
r= real1 + real2;
i= imaginario1 + imaginario2;
return r,i;
}
};
using namespace std;
#include "complejo.h"
void main(){
complejo x,y(4,5),z(10,-10),a;
x.setRealImaginario(20,40);
a.sumaRectangular(x,z);
a.imprimeRectangular();
}
Hola, ¿puedes poner el código como ha quedado y indicar en qué línea te marca error si quitas el return?
Saludos!
#include <conio.h>
#include <math.h>
#include <iostream>
#include <stdlib.h>
using namespace std;
class complejo{
private:
double r,i;
char a;
public:
complejo(){
r=0.0;
i=0.0;
a='a';
}
complejo(double real, double imaginario,char atributo){
r=real;
i=imaginario;
a=atributo;
}
void setRealImaginario(double real,double imaginario,char atributo){
r=real;
i=imaginario;
a=atributo;
}
double getReal(){
return r;
}
double getImaginario(){
return i;
}
char getAtributo(){
return a;
}
void setMagnitudAngulo(double mag, double ang){
r=mag;
i=ang;
}
double getMagitud(){
return r;
}
double getAngulo(){
return i;
}
void imprimeRectangular(){
if(r!=0&&i!=0){
cout <<"\n" << r << "," << i << "i";
}
else if(r==0&&i!=0){
cout <<"\n" << i <<"i";
}
else if(r!=0&&i==0){
cout <<"\n" << r;
}
else{
cout <<"\n0";
}
}
complejo operator+(const complejo&op2) const{
complejo suma;
if(op2.a == 'r'){
suma.r= r+op2.r;
suma.i= i+op2.i;
cout << "\nResultado de la Suma" << suma.r << "," << suma.i << "i";
return suma;
}
else{
suma.r= r+op2.r;
suma.i= i+op2.i;
cout<<"\nResultado de la Suma: " << suma.r << ","<< suma.i<< "\xF8";
return suma;
}
}
complejo operator-(const complejo&op2) const{
complejo resta;
if(op2.a == 'r'){
resta.r= r-op2.r;
resta.i= i-op2.i;
cout << "\nResultado de la Resta: " << resta.r << "," << resta.i << "i";
return resta;
}
else{
resta.r= r-op2.r;
resta.i= i-op2.i;
cout << "\nResultado de la Resta: " << resta.r << "," << resta.i << "\xF8";
return resta;
}
}
complejo operator*(const complejo&op2) const{
complejo multi;
if(op2.a == 'r'){
multi.r = (r*op2.r)-(i*op2.i);
multi.i = (r*op2.i)+(i*op2.r);
cout <<"\nResultado de la Multiplicacion: " << multi.r << "," << multi.i << "i";
return multi;
}
else{
multi.r = r*op2.r;
multi.i = i+op2.i;
cout <<"\nResultado de la Multiplicacion: " << multi.r << "," << multi.i << "\xF8";
return multi;
}
}
complejo operator/(const complejo&op2) const{
complejo divi;
if(op2.a == 'r'){
divi.r =((r*op2.r)+(i*op2.i))/(pow(op2.r,2)+pow(op2.i,2));
divi.i =((i*op2.r)-(r*op2.i))/(pow(op2.r,2)+pow(op2.i,2));
cout <<"\nResultado de la Division: " << divi.r << "," << divi.i << "i";
return divi;
}
else{
divi.r= r/op2.r;
divi.i= i-op2.i;
cout <<"\nResultado de la Division: " << divi.r << "," << divi.i << "\xF8";
return divi;
}
}
complejo operator!=(const complejo&op2) const{
complejo trans;
if(op2.a == 'p'){
trans.r=op2.r*(cos(op2.i*.017453));
trans.i=op2.r*(sin(op2.i*.017453));
cout <<"Resultado de la Transformacion a Rectangular: " << trans.r << "," << trans.i << "i";
return trans;
}
else{
if((op2.r>0)&&(op2.i>0)){
trans.r=sqrt((pow(op2.r,2))+(pow(op2.i,2)));
trans.i=((atan(op2.i/op2.r))*57.29);
trans.i=sqrt(pow(trans.i,2));
}
if((op2.r<0)&&(op2.i>0)){
trans.r=sqrt((pow(op2.r,2))+(pow(op2.i,2)));
trans.i=((atan(op2.r/op2.i))*57.29);
trans.i=(sqrt(pow(trans.i,2)))+90;
}
if((op2.r>0)&&(op2.i<0)){
trans.r=sqrt((pow(op2.r,2))+(pow(op2.i,2)));
trans.i=((atan(op2.i/op2.r))*57.29);
trans.i=-(sqrt(pow(trans.i,2)));
}
if((op2.r<0)&&(op2.i<0)){
trans.r=sqrt((pow(op2.r,2))+(pow(op2.i,2)));
trans.i=((atan(op2.r/op2.i))*57.29);
trans.i=-(sqrt(pow(trans.i,2)))-90;
}
cout<<"\nResultado de la Transformacion a Polar" << trans.r<< ","<< trans.i<< "\xF8";
return trans;
}
}
};
using namespace std;
#include "complejo.h"
void main(){
complejo x,y(4,5,'p'),z(10,-10,'r'),a;
x.setRealImaginario(20,40,'r');
a!=x;
_getch();
}