Está en la página 1de 15

UNIVERSIDAD NACIONAL DEL CALLAO

FACULTAD DE INGENIERIA ELECTRICA Y ELECTRONICA


ESCUELA PROFESIONAL DE INGENIERIA ELECTRICA

LENGUAJE DE PROGRAMACION
CICLO: 2015-B

DOCENTE: ING. POMA GARCÍA, JOSÉ ANTONIO

TEMA:
SOLUCIONARIO DEL EXAMEN PARCIAL

ALUMNO:

CARRION PIMENTEL, Angelo Clinton

CALLAO - PERU

NOVIEMBRE - 2015
UNIVERSIDAD NACIONAL DEL CALLAO

Problema 01
En el laboratorio de la FIEE se requiere crear un programa en c++
que nos permita hallar la impedancia (Z) en paralelo de los
siguientes casos: A si es Inductancia y resistencia en paralelo; B si
es capacidad y resistencia en paralelo; D si es Inductancia,
capacidad y resistencia en paralelo y X para salir del menú. (Z debe
tener una precisión de 4 decimales).

CODIFICACION EN C++

#include<iostream>
#include<iomanip>
#include<cmath>
#include<cstdlib>
using namespace std;
int main ()
{
float l,r,w,c,z;
char op;

cout<<"Programa para Calcular la impedancia (Z) en paralelo"<<endl;


cout<<"----------------------------------------------------"<<endl;
cout<<"Si es Inductancia y resistencia en paralelo ...............(A)"<<endl;
cout<<"Si es Capacidad y resistencia en Paralelo..................(B)"<<endl;
cout<<"Si es Inductancia, capacidad y resistencia en paralelo ....(D)"<<endl;
cout<<"Salir del menu ............................................(X)"<<endl;
cout<<"Ingrese la opcion :";cin>>op;

system ("cls");

switch (op)
{
case 'a':
cout<<"Ingrese L :";cin>>l;
cout<<"Ingrese R :";cin>>r;
cout<<"Ingrese W :";cin>>w;
z=(w*r*l)/sqrt(r*r+pow(w,2)*pow(l,2));
cout<<"El resultado es "<<fixed<<setprecision (4)<<z<<endl;
break;
case 'b':

ANGELO CARRION 2
UNIVERSIDAD NACIONAL DEL CALLAO

cout<<"Ingrese R :";cin>>r;
cout<<"Ingrese W :";cin>>w;
cout<<"Ingrese C :";cin>>c;
z= r/sqrt(1+pow(w,2)*pow(c,2)*pow(r,2));
cout<<"El resultado es "<<fixed<<setprecision (4)<<z<<endl;
break;
case 'd':
cout<<"Ingrese L : ";cin>>l;
cout<<"Ingrese R :";cin>>r;
cout<<"Ingrese W :";cin>>w;
cout<<"Ingrese C : ";cin>>c;
z=sqrt((1.0/r)*(1.0/r)+pow((w*c-1.0/w*l),2));
cout<<"El resultado es "<<fixed<<setprecision (4)<<z<<endl;
break;
case'x':
system ("cls");
break;

system ("Pause");
return main();

ANGELO CARRION 3
UNIVERSIDAD NACIONAL DEL CALLAO

PSEUDOCODIGO
Inicio
//Variables
l, r, w, c, z: real
op: carácter

//Entrada
Leer op

//Proceso

En caso que op sea

Case ‘a’:
//Entrada
Leer l,r,w

//Proceso
z← (w*l*r)/√((r^2) + (w^2) ∗ (l^2))

//Salida
Escribir z
Case ‘b’:
//Entrada
Leer l,r,c

//Proceso
z←r/√(1 + w^2 ∗ c^2 ∗ r^2)

//Salida
Escribir z
Case ‘d’:
//Entrada
Leer l,r,c w

//Proceso
z←1.0/√((1.0/r^2) + ((w ∗ c) − (1.0/w ∗ r)^2))
//Salida
Escribir z
Case ‘x’:

Fin Caso
Fin

ANGELO CARRION 4
UNIVERSIDAD NACIONAL DEL CALLAO

DIAGRAMA DE FLUJO

Inicio

l,r,w,c,z:Reales
op : Carácter

Leer op

op

‘a’ Leer l ,r, w z← (w*l*r)/√((r^2) + (w^2) ∗ (l^2))

‘b’ Leer r, w, c z←r/√(1 + w^2 ∗ c^2 ∗ r^2)

z←1.0/√((1.0/r^2) + ((w ∗ c) − (1.0/w ∗ r)^2))


‘d’ Leer r, w,
c,l

‘x’ Salir del menú

Escribir Z

Fin

ANGELO CARRION 5
UNIVERSIDAD NACIONAL DEL CALLAO

Problema 02
En la minera FIEEUNAC se tiene una línea de transmisión de tipo
de transmisión de cuatro conductores en paralelo por cada fase. La
resistencia equivalente en fases cuádruplex, está dada por la
4
ecuación: 𝑅𝑒𝑞 = √√2 ∗ 𝑟 ∗ 𝑑 3
Dónde: r= Radio del conductor adoptado en mm.
d= Separación entre centros de los conductores que hay por
cada fase.
Usando esta fórmula, escriba un programa en c++ para calcular y
desplegar la resistencia equivalente cuando se ingresa los valores
de r=13.881 mm. y una distancia entre los conductores de la misma
fase de 30cm. La salida deberá producir el despliegue

CODIFICACION EN C++
#include<iostream>
#include<cstdlib>
#include<cmath>
#include<iomanip>
using namespace std;

int main()
{
float re,r,d;
r=13.881;
d=300;
re=pow((sqrt(2)*r*pow(d,3)),1.0/4);
cout<<"La resistencia equivalente es :
"<<fixed<<setw(7)<<setprecision(4)<<re<<endl;
system("pause");
return 0;

ANGELO CARRION 6
UNIVERSIDAD NACIONAL DEL CALLAO

PSEUDOCODIGO

Inicio
//Variables
d, re, r: Reales

//Proceso
r=13.881
d=300
4
re ← √√2 ∗ 𝑟 ∗ 𝑑^3
//Salida
Escribir re

Fin

ANGELO CARRION 7
UNIVERSIDAD NACIONAL DEL CALLAO

DIAGRAMA DE FLUJO

Inicio

re, r, d: Real

r = 13.881
d = 300

1
4
re← √√2 ∗ 𝑟 ∗ 𝑑^3

Escribir re

Fin

ANGELO CARRION 8
UNIVERSIDAD NACIONAL DEL CALLAO

Problema 03
El valor de 𝑒 𝑥 se puede aproximar por la suma:
𝑥 𝑥2 𝑥3 𝑥𝑛 𝑥𝑖
𝑒𝑥 = 1 + + + +⋯ = ∑𝑛𝑖=0 , −∞ < 𝑥 < ∞
1! 2! 3! 𝑛! 𝑖!

Escribe un programa que lea un valor de x como entrada y visualice


las sumas parciales de la serie anterior, cuando se ha realizado una
suma, dos sumas, tres sumas,… 15 sumas.
La aproximación es x.xxxxx donde x.xxxxx denota el valor
aproximado 𝑒 𝑥 , deberá colocarse en un ancho de campo de 7, con
la precisión de cinco decimales.

CODIFICACION EN C++
#include<iostream>
#include<cmath>
#include<iomanip>
#include<cstdlib>
using namespace std;
int main ()
{
Int fact;
float e,x;
cout<<"Programa para calcular e^x"<<endl;
cout<<"Ingrese el valor de x :";cin>>x;
e=1;
fact=1;
for(int i=1;i<=15;i++)
{
e=e+pow(x,i)/fact;
fact=fact*(i+1);
cout<<"Suma : "<<i<<"="<<fixed<<setw(7)<<setprecision(5)<<e<<endl;

}
cout<<"La aproximacion es :"<<fixed<<setw(7)<<setprecision(5)<<e<<endl;
return 0;

ANGELO CARRION 9
UNIVERSIDAD NACIONAL DEL CALLAO

PSEUDOCODIGO
Inicio
//Variables
e, x: real
i, fact: enteros

//Entrada
Leer x

//Proceso
e=1, fact=1
Desde i=1 hasta 15 Inc en 1
e←e+(x^i)/fact
fact←fact*(i+1)
//Salida
Escribir e
Fin_desde

Fin

ANGELO CARRION 10
UNIVERSIDAD NACIONAL DEL CALLAO

DIAGRAMA DE FLUJO

Inicio

e, x: Real
i, fact: Entero

Leer x

e=1
fact=1

i=1
i<=15
i++

e ← e +(x^i)/fact
fact ← fact*(i+1)

Escribir e

Fin
ANGELO CARRION 11
UNIVERSIDAD NACIONAL DEL CALLAO

Problema 04
En el laboratorio de accionamiento eléctrico FIEE, se realiza un
concurso de dos alumnos a los que llamaremos David y Vicente,
colocan un numero arbitrario de contactores sobre el área de
trabajo. El concurso consiste en ir retirando contactores del grupo
de contactores. Pierde el alumno que se ve obligado a retirar el
último contactor. Estrategia: Siempre que sea el turno de David,
éste jugara si puede de tal modo que queden
(MAX_REQUERIMIENTO+1)*N+1 contactores en el grupo de
contactores; si no le es posible, retira un único contactor del grupo.
MAX_REQUERIMIENTO = Número máximo de contactores que
puede retirar un alumno del montón en un único requerimiento. Si
debe haber más de contactores en el grupo de trabajo.

CODIFICACION EN C++

#include<iostream>
#include<cmath>
#include<iomanip>
#include<cstdlib>
using namespace std;
int main()
{ int a,f,n,d,c;
cout<<"Concurso FIEE"<<endl<<endl;
cout<<"ingrese maximo requerimiento: ";cin>>f;
system("cls");
a=5+rand()%50;
n=1;
do
{
c=a-(((f+1)*n)+1);
if(c>f||c<=0)
{
cout<<"david ha retirado 1 contactor"<<endl;
a=a-1;
} else
{

ANGELO CARRION 12
UNIVERSIDAD NACIONAL DEL CALLAO

cout<<"david ha retirado "<<c<<"contactores"<<endl;


a=a-c;
}
if(a<=0)
{
cout<<"GANASTE"<<endl;
system("pause");
return 0;
} else
{
do
{
cout<<"cuantos contactores desea retirar: ";
cin>>d;
if(d<=f&&d>0)
{
a=a-d
} else
{
cout<<"numero invalido intente otra vez"<<endl;
}
} while(d>f||d<=0);
if(a<=0)
{
cout<<"PERDISTE"<<endl;
}

}
n=n+1; c=0;
}while(a>0);
system("pause");
return 0;
}

ANGELO CARRION 13
UNIVERSIDAD NACIONAL DEL CALLAO

PSEUDOCODIGO

Inicio
//Variables
a,f,n,d,c: real

//Entrada
Leer f

//Proceso
a=5+rand()%50
n=1
Hacer
c=a-(((f+1)*n)+1)
si (c>f||c<=0) entonces
a=a-1
si no
a=a-c
fin_si

si (a<=0) entonces
Escribir “GANASTE”
si no
hacer
Leer d
Si (d<=f&&d>0) entonces
a=a-d
Si no
Escribir “Numero Invalido”
Mientras (d>f||d<=0)
fin_hacer

Si (a<=0) entonces
Escribir “PERDISTE”
fin_si
Hacer n++, c=0;
fin_si
Mientras(a>0)
fin_hacer

Fin

ANGELO CARRION 14
UNIVERSIDAD NACIONAL DEL CALLAO

DIAGRAMA DE FLUJO

ANGELO CARRION 15

También podría gustarte