Hola. El programa ya corre,despues de meter los datos el resultado siempre es cero,lo cual es equivocado.¿en donde es el error en una funcion o en un apuntador?Muchas gracias.
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
struct corriente
{
string intensidad;
string voltaje;
string resistencia;
string inductancia;
string capacitancia;
string frecuencia;
float inten;
};
string capturacad(string msj);
float capturanum(string msj);
float calculainten(float inten);
void capturainten(corriente *apinten);
void imprimir(corriente *apinten);
int main()
{
corriente apinten1;
capturainten(&apinten1);
imprimir(&apinten1);
system("pause");
return 0;
}
string capturacad(string msj)
{
string texto;
fflush(stdin);
cout<<msj;
getline(cin,texto);
return texto;
}
float capturanum(string msj)
{
float num;
cout<<msj;
cin>>num;
return num;
}
float calculainten(float inten)
{
float i,vol=0,resis=0,induc=0,capa=0,frecu=0;
i=vol/sqrt(pow(resis,2)+pow(2*3.1416*frecu*induc-(1/(2*3.1416*frecu*capa)),2));
return i;
}
void capturainten(corriente *apinten)
{
(*apinten).voltaje=capturacad("Introduzca el voltaje:");
(*apinten).resistencia=capturacad("Introduzca resistencia:");
(*apinten).inductancia=capturacad("Introduzca inductancia:");
(*apinten).capacitancia=capturacad("Introduzca capacitancia:");
(*apinten).frecuencia=capturacad("Introduzca la frecuencia:");
(*apinten).inten=calculainten(apinten->inten);
}
void imprimir(corriente *apinten)
{
cout<<"La intensidad es:"<<apinten->inten<<endl;
}