Código:
#include<iostream> #include<cstdlib> #include<cmath> using namespace std; int circuito_mixto(); int VCA(); int determinantes(); int main()//aqui esta mi funcion principal<=============== { int ele; cout<<"Eleige una de las siguientes obciones \n1)Calcular circuito mixto\n2)Calcular circuito alterno\n3)Calcular determinantes "<<endl; cin>>ele; switch(ele)//comiensa a elegir y llamar a la funcion o eso se supone que deveria hacer { case'1':circuito_mixto();break; case'2':VCA();break; case'3':determinantes();break; } return EXIT_SUCCESS; } //Mi primer problema en el menu<=============== int circuito_mixto() { float V,rs,ram,rp,RS[10],RPs[10],RAM[10];//valores que ingresa el usuario float sumars=0,sumrm[10]={0},SRP=0,VS[10],PS[10],SVS=0,I[10],P[10];//variables dentro de ciclos for float RP,RT,IT,PT,VP;//variables estaticas (fuera del ciclo for) cout<<"::::::PROGRAMA PARA CALCAULAR RESISTENCIAS DE CIRCUITOS MIXTOS::::::"<<endl; cout<<"--------(no se calcularan circuitos con sub resistencias)-----------"<<endl; cout<<"Por favor ingresa el voltaje de tu circuito"<<endl; cin>>V;//valor del voltaje del circuito cout<<"\n\nPor favor ingresa el numero de resistencias en serie del circuito"<<endl; cin>>rs;//resistencias en serie cout<<"Por favor ingresa el numero de ramas del circuito"<<endl; cin>>ram;//ramas o caidas del voltaje del circuito a calcular cout<<"Ahora por favor ingresa el numero de resistencias paralelas"<<endl; cin>>rp;//resistencias paralelas cout<<"\n\n"<<endl; for(int i=1;i<=rs;i++)//se guardaran las resistencias en serie en un vector y se pediran con un for segun cuantas halla { cout<<"Cual es el valor de la resistencia en serie ["<<i<<"] : ";cin>>RS[i]; sumars+=RS[i]; } cout<<"\n\n"<<endl; for(int i=1;i<=rp;i++)//se guardaran las resistencias en serie en un vector y se pediran en un for segun cuantas halla { cout<<"Por favor ingresa la resistencia en parelelo : ";cin>>RPs[i]; cout<<"en que rama se encuentra dicha resistencia : ";cin>>RAM[i]; cout<<"\n"; } cout<<"\n\n"<<endl; for(int i=1;i<=ram;i++)//se inicia un ciclo segun la cantidad de resistencias paralelas que halla { for(int j=1;j<=rp;j++)//se inicia otro ciclo segun la cantidad de ramas que halla { if(RAM[j]==i)//se verifica que lo ingresado en la posicion del vector sea igual a j si si aculara dicha resistencia {sumrm[i]+=RPs[j];} } } for(int i=1;i<=ram;i++) { SRP+=(1/sumrm[i]);//ya con la cantidad de resistencias sumadas en su respectiva rama , se procede a dividir 1 por cada rama aculada de resistencias } RP=(1/SRP); RT=RP+sumars;//despues de obtener 1 entre cada rama y ser acumulado , se vuelve a dividir entre 1 lo que fue acumulado IT=V/RT;//se dividira el voltaje entre la resistencia total para obtener la intencidad total del circuito PT=V*IT;//se multiplicara el voltaje por la intencidad total para saber la potencia total , por que ?? por que el masetruli asi lo quiere JAJAJAJAJAJA for(int i=1;i<=rs;i++)//segun la cantidad de resistencias en serie se obtendra el votaje de cada una de ellas { VS[i]=IT*RS[i]; PS[i]=RS[i]*pow(IT,2); cout<<"El voltaje en serie "<<i<<" es : "<<VS[i]<<" Volt's"<<endl; cout<<"La potencia en serie "<<i<<" es : "<<PS[i]<<" Volt's"<<endl; SVS+=VS[i];//se acumulara dicho voltaje en una sola variable por cada resistencia } cout<<"\n"<<endl; VP=V-SVS;//al voltaje del circuito se le restara la acumulacion del voltaje en serie para obtener el voltaje en parelelo for(int i=1;i<=ram;i++) { I[i]=VP/sumrm[i];//se sacara una caida de voltaje segun la suma de la cantidad de resistncias de una rama dividido por el voltaje paralelo cout<<"La caida de voltaje en la rama ["<<i<<"] es de : "<<I[i]<<" Amp"<<endl; } cout<<"\n"<<endl; for(int i=1;i<=rp;i++)//se inicia un ciclo segun la cantidad de resistencias paralelas que halla { for(int j=1;j<=ram;j++)//se inicia otro ciclo segun la cantidad de ramas que halla { if(RAM[i]==j)//se verifica que lo ingresado en la posicion del vector sea igual a j si si culara dicha resistencia {P[i]=RPs[i]*pow(I[j],2);cout<<"La potencia de la resitencia "<<i<< "es de : "<<P[i]<<" Watts"<<endl; } } } cout<<"\n\nEl valor del voltaje paralelo es : "<<VP<<" Volt's"<<endl; cout<<"El valor de la resistencia paralela es : "<<RP<<" Ohms"<<endl; cout<<"El valor de la resistencia total es : "<<RT<<" Ohms"<<endl; cout<<"El valor de la intencidad total es de : "<<IT<<" Amp"<<endl; cout<<"El valor de la potencia total es de : "<<PT<<" Watts"<<endl; return EXIT_SUCCESS; } //Mi segundo problema en el menu<=============== int VCA() { char mc[2],ml[2]; double xc,xl,x,z,i,csang,ang,ptz; double vol,her,res,cap,indu; double ncap,nindu; double pi=3.1416; cout<<":::::PROGRAMA PARA CALCULAR CIRCUITOS PARALELOS:::::\n\n"<<endl; cout<<"Por favor ingrese el valor del voltaje : ";cin>>vol; cout<<"Por favor ingrese el valor de la frecuencia : ";cin>>her; cout<<"Por favor ingrese el valor de la resistencia del circuito : ";cin>>res; cout<<"ahora ingrese el valor de la capacitancia y su unidad de medida : ";cin>>cap>>mc; cout<<"ahora ingrese el valor de la inductancia y su unidad de medida : ";cin>>indu>>ml; switch(mc[0]) { case('u'):ncap=cap*pow(10,-6);break; case('p'):ncap=cap*pow(10,-9);break; } switch(ml[0]) { case('m'):nindu=indu/1000;break; case('h'):nindu=indu;break; } xc=1/(2*pi*her*ncap); xl=(2*pi*her*nindu); x=xl-xc; z=sqrt(pow(x,2)+pow(res,2)); i=vol/z; csang=res/z; ang=((acos(csang))*180)/pi; ptz=i*vol*csang; cout<<"\nLa reactancua capacitiva del circuito es de :------- "<<xc<<" ohms"<<endl; cout<<"\nLa reactancia inductiva del circuito es de :-------- "<<xl<<" ohms"<<endl; cout<<"\nLa reactancia total es de :------------------------- "<<x<<" ohms"<<endl; cout<<"\nLa ipedancia es de :-------------------------------- "<<z<<" ohms"<<endl; cout<<"\nLa caida de voltaje es de :------------------------- "<<i<<" Amp"<<endl; cout<<"\nEl angulo de fase es de :--------------------------- "<<ang<<char(248)<<endl; cout<<"\nLa potencia del circuito es de :-------------------- "<<ptz<<" Watts"<<endl; return EXIT_SUCCESS; } //Y mi tercer problema en el menu<=============== int determinantes() { float x[3],y[3],z[3]; float DS,DX,DY,Xr,Yr,lx[3],ly[3]; char ci,cx,cy; int a=65; cout<<"::::PROGRAMA PARA CALCULAR DETERMINANTES::::\n\n"<<endl; for(int i=1;i<=2;i++) { cout<<"Por favor ingrese la formula general "<<char(a)<<" tal cual como la tiene"<<endl; cin>>x[i]>>cx>>y[i]>>cy>>ci>>z[i]; a++; } cout<<"\n"<<endl; DS=(x[1]*y[2])-(x[2]*y[1]); DX=(z[1]*y[2])-(z[2]*y[1]); DY=(x[1]*z[2])-(x[2]*z[1]); Xr=DX/DS; Yr=DY/DS; for(int i=1;i<=2;i++) { lx[i]=z[i]/x[i]; ly[i]=z[i]/y[i]; cout<<"el punto "<<i<<"X es: "<<lx[i]<<endl; cout<<"el punto "<<i<<"Y es: "<<ly[i]<<endl; cout<<"\n"<<endl; } cout<<"la determinante x es : "<<DX<<endl; cout<<"la determinante Y es : "<<DY<<endl; cout<<"la determinante sistema es : "<<DS<<endl; cout<<"el punto de intersepcion de x es : "<<Xr<<endl; cout<<"el purto de intercepcion de y es : "<<Yr<<endl; return EXIT_SUCCESS; }