Feb 9, 2013 at 1:20am UTC
Sou iniciante em programação e estou estudando C++ e gostaria da ajuda do forum.
Estou fazendo um programa de números complexos e na função soma(p.ex)tenho duas variáveis para retornar. Sei que o comando return só retorna uma variável.
Como posso retornar as duas variáveis de resposta Real e Imaginário?
//---Protótipos de função
void leitura1(double vec1[],double);
void leitura2( double vec2[],double);
double soma (double vec1[] ,double);//de cada vetor
double subtração (double,double,double,double );
//---
int main()
{
_tsetlocale(LC_ALL,_T("portuguese_brazil"));
//---
int numOpção;
const int max =2;//definida como constante
double vector1 [max];
double vector2 [max];
double real;
double imag;
do
{
//system("cls");
//---Chama funções
cout<<" Entre com os Numeros Complexos: "<<endl;
leitura1( vector1, max);
leitura2( vector2, max);
cout<<"//------------------------------------//"<<endl;
cout<<" Escolha sua opção: "<<endl;
cout<<"[1] Soma de números complexos: "<<endl;
cout<<"[2] Subtração de números complexos: "<<endl;
cout<<"[3] Multiplicação de números complexos por escalar: "<<endl;
cout<<"[0] Sair digite 0(zero): "<<endl;
cout<<"//------------------------------------//"<<endl;
cout<<"Digite sua opção: ";
cin>>numOpção;
cout<<endl;
double subtração (double a1, double b1,double a2, double b2)
{
double sub1=0;
double sub2=0;
//double sub;
sub1 = (a1-b1);
sub2 = (a2-b2);
cout<<" Real: "<<sub1<<"Imag: "<<sub2<<endl;
return 0;
}
void leitura1 (double vec1[], double sizeOfArray )
{
cout<<" Complexo 1: "<<endl;
for (int i =0; i < sizeOfArray; i++)
{
cout<<" vec1 [ " << i <<" ] : ";
cin>>vec1[i];
}
Feb 9, 2013 at 1:29am UTC
You need to create a struct/class to hold the real and imaginary parts of the number, then return that structure.
Feb 9, 2013 at 11:39am UTC
Obrigado.
Vou tentar esta codificação.
Feb 9, 2013 at 12:03pm UTC
Bom dia.
Você pode mostrar um exemplo, de como aplicar as modificações propostas?