Práctica 3
Práctica 3 problema 1
Dadas las calificaciones individuales de un estudiante en 3 aspectos del trabajo anual de un curso (laboratorio, exámen intermedio, exámen final), haga un programa para calcular la calificación final con ponderaciones de 20%, 30% y 50% respectivamente la salida, imprima al final el nombre del estudiante sus tres calificaciones individuales y la calificacion final.
Seudocódigo
1.-Inicio
print "nombre estudiante: "
read nombre
print "calificacion laboratorio: "
read lab
print "calificacion examen intermedio: "
read calif1
print "calificacion examen final: "
read calif2
calif_total=(lab*0.20+calif1*0.30+calif2*0.50)
print nombre,"",lab,"",calif1,"",calif2,"=",calif_total
fin
Lenguaje C
Práctica 3 problema 2
Una lista de tasas de cambio de moneda extranjera durante 1977 proporciona las siguientes equivalencias
100 francos franceses = 21.55 dólares canadienses
1 libra británica = 1.84 dólares canadienses
100 dracmas griegas = 2.95 dólares canadienses
100 florines holandeses = 43.20 dólares canadienses
100 coronas suecas = 24.55 dólares canadienses
1 dolar norteamericano = 1.06 dólares canadienses
Desarrolle un programa para realizar las siguientes conversiones
a) Leer una cierta cantidad de francos franceses e imprimir el equivalente en dólares canadienses
Seudocódigo
1.- Inicio
print "francos franceses= "
read ff
dc=(ff*21.55)/100
print "dolares canadienses= ",dc
fin
Lenguaje C
b) Leer una cantidad en dracmas griegas e imprimir el equivalente en libras británicas
Seudocódigo
1.-Inicio
dc, dg, lb real
print "dracmas griegas= "
read dg
dc=(dg*2.95)/100
lb=dc/1.84
print "libra britanica= ",lb
fin
Lenguaje C
c) Leer una cantidad en dólares canadienses e imprimir el equivalente tanto en dólares norteamericanos como en florines holandeses
Seudocódigo
1.-Inicio
Print "dlls canadienses= "
read dc
da=dc/1.06
fh=(dc*100)/43.20
print "dolares americanos= ", da
print "florines holandeses=", fh
fin
Lenguaje C
d) Leer una cantidad en dólares norteamericanos e imprimir el equivalente tanto en coronas suecas como en francos franceses
Seudocódigo
1.-Inicio
print "dolares norteamericanos= "
read dn
dc=dn*1.06
cs=(dc*100)/24.25
ff=(dc*100)/21.55
print "conversion de dolares norteamericanos a coronas suecas es",cs"conversion en francos franceses es",ff
fin
Lenguaje C
Práctica 3 problema 3
Si se coloca una escalera de 20 pies a un angulo de 85 grados a lado de un edificio, la altura en la cual la escalera toca el edificio se puede calcular como altura=20*sen(85). Calcule ésta altura y escriba, compile o ejecute un programa que obtenga y despliegue el valor de la altura. Después modifique el programa para solicitar la altura de la escalera y el angulo de ésta para recibir los datos por el teclado.
Seudocódigo
1.-Inicio
angulo=(85*3.1416)/180
altura=20
altura_edificio=altura*sin(angulo)
print "altura donde esta apoyada la escalera en el edificio es", altura_edificio
fin
Lenguaje C++
Lenguaje C
Práctica 3 problema 4
Las coordenadas polares de un punto consisten en la distancia (r), de uin origen específico y un angulo con respecto al eje de las x. Las coordenadas (x,y), de un punto éstan relacionadas con sus coordenadas polares por las formulas
x=rcosangulo
y=rsenangulo
con éstas formulas, escriba un programa que calcule las coordenadas de un punto y que reciba los valores por medio del teclado de r y angulo en coordenas rectangulares.
Seudocódigo
1.-Inicio
print "angulo en grados"
read angulo
print "r"
read r
x=r*cos(((angulo*3.1416)/180))
y=r*sin(((angulo*3.1416)/180))
print "coordenadas del punto x= ",x, "coordenadas del punto y= ",y
fin
Lenguaje C++
Lenguaje C
Práctica 3 problema 5
Ejercicio 1 del exámen
Escriba un programa que introduzca tres números desde el teclado, después imprima la suma, el promedio, el producto.
Seudocódigo
1.- Inicio
print "n1= "
read n1
print "n2= "
read n2
print "n3= "
read n3
print "n4= "
read n4
suma=n1+n2+n3+n4
promedio=suma/4
producto=n1*n2*n3*n4
print "suma=",suma
print "promedio=",promedio
print "producto=",producto
fin
Lenguaje C++
Lenguaje C
Práctica 3 problema 6
Ejercicio 2 del exámen
Escriba un programa para determinar la distancia recorrida por un automóvil a 25 segundos, suponiendo que inicialmente viajaba a 75 millas por hora y el conductor aplica el freno para reducir la velocidad a razón de 15millas/(seg*seg). En este caso, distancia=s-(1.0/2.0)*d*t*t
Algoritmo
1.- Inicializar variables
s=60
d=12
t=20
2.- Calcular distancia
distancia=s-(1.0/2.0)*d*t*t
3.- Despegar distancia
print "distancia=", distancia
4.-fin
Lenguaje C++
Lenguaje C
Práctica 3 problema 7
Ejercicio 3 del exámen
Escriba un programa para calcular y desplegar las coordenadas del punto medio de la línea que une los dos puntos (x1,y1) y (x2,y2) son (x1+x2)/2 y (y1+y2)/2. El programa debe imprimir el siguiente resultado
La coordenada x del punto medio es xxxx
La coordenada y del punto medio es xxxx
Donde los intervalos son los valores calculados.
Seudocódigo
1.- Inicio
x1, y1, x2, y2 real
mx, my real
print "x1="
read x1
print "y1="
read y1
print "x2="
read x2
print "y2="
read y2
mx=(x1+x2)/2
my=(x1+x2)/2
print "punto medio de x", mx
print "punto medio de y", my
fin
Lenguaje C++
En lenguaje C
Práctica 4
Práctica 4 problema 1
Crear un programa para determinar que valor es mayor v1 o v2 o si son iguales
Seudocódigo
1.- Inicio
print "valor 1="
read v1
print "valor 2 ="
read v2
if (v1>V2)
{
print v1,"es mayor"
}
else{
if (v1==v2)
{
print "los numeros son iguales"
}
else{
print v2,"es mayor"
}
}
Fin
Lenguaje C++
Práctica 4 problema 2
Escriba un programa para calcular el valor de la presión, en libras*pulgada*pulgada (psi), de una forma ondulada describa como sigue:
Para un tiempo menor de 35 seg. la presión es
presión=0.46*t
y para un tiempo mayor igual de 35 seg. la presión es
presión=0.19*t+9.45
El programa debe de solicitar que se intoduzcan los datosdel tiempo y se debe despejar como resultado la presión.
Diagrama de flujo
Lenguaje C++
Práctica 4 problema 3
Un ángulo se considera agudo si es < de 90 grados, obtuso si es > de 90 grados y recto si es = 90 grados. Utilizando ésta información escriba un programa que acepte un ángulo, en grados y muestre el tipo de ángulo que corresponde al valor introducido en grados.
Seudocódigo
1.- Inicio
angulo real
print "angulo="
read angulo
if (angulo<90)
{
print angulo,"es un angulo agudo"
}
else{
if (angulo==90)
{
print angulo,"es un angulo recto"
}
else{
print angulo, "es un angulo obtuso"
}
}
Fin
Lenguaje C++
Práctica 4 problema 4
Escriba un programa que acepte dos números reales de usuario y un código de selección, si el código introducido es 1, haga que el programa sume los dos números introducidos anteriormente y despliegue el resultado; si el código de selección es dos, los números deberán ser multiplicados, si el código de selección es 3 el primer número deberá dividirse entre el segundo. No permita la división entre cero y despliegue un mensaje apropiado cuando se intente ésta división.
Seudocódigo
1.-Inicio
num1, num2, resultado real
opcion
print "numero 1="
read num1
print "numero 2="
read num2
print "operaciones aritmeticas"
print " 1)sumar 2)multiplicar 3)dividir "
print "seleccione opcion"
read opcion
if (opcion==1)
{
resultado=num1+num2
print num1,"+",num2,"=",resultado
}
else{
if (opcion==2)
{
resultado=num1*num2
print num1,"*",num2,"=",resultado
}
else{
if (opcion==3)
}
if (num2!=0)
{
resultado=num1/num2
print num1,"/",num2,"=",resultado
}
else{
print "no se permite la división entre cero"
}
}
else{
print "error en opcion"
}
}
}
Lenguaje C++
Práctica 4 problema 5
El nivel de grado de los estudiantes que no han terminado la universidad normalmente se determina en base con la siguiente tabla.
Número de créditos obtenidos Grado
menor que 32 primer grado
32 a 63 segundo grado
64 a 95 tercer grado
96 o más último grado
Utilizando ésta información escriba un programa que acepte el número de créditos que ha obtenido un estudiante y determine en que grado se encuentra.
Seudocódigo
1.-Inicio
print "no. creditos alumno="
read creditos
if (creditos>0 and creditos<32)
{
print "primer grado"
}
else{
if (creditos>=32 and creditos<63)
{
print "segundo grado"
}
else{
if (creditos>=64 and creditos<=95)
{
print "tercer grado"
}
else{
print "ultimo grado"
}
}
}
fin
Lenguaje C++
Práctica 4 problema 6
Basándose en el año de fabricación y el peso de un automóvil el estado de Nueva Jersey clasifica el peso del vehículo y determina la tarifa de registro, de acuerdo con la siguiente tabla.
Año Modelo Peso Categoría de peso Tarifa de registro
1970 o anterior menos de 2700 libras 1 $16.50
2700 libras a 3800 libras 2 $25.50
mas de 3800 libras 3 $46.50
1971 a 1979 menos de 2700 libras 4 $27.00
2700 a 3800 libras 5 $30.50
mas de 3800 libras 6 $52.50
1980 o posterior menos de 3500 libras 7 $19.50
3500 libras o mas 8 $52.50
Utilizando ésta información escriba un programa que acepte el año y el peso del automóvil, que determine y muestre la categoría de peso y la tarofa del registro.
Seudocódigo
1.- Inicio
peso, anio int
print "año automovil="
read anio
print "peso en libras="
read peso
if (anio<=1970)
{
if (peso<2700)
{
print ("categoria 1 tarifa de registro=$16.50")
}
else{
if (peso>=2700 and peso<=3800)
{
print "categoria 2 tarifa del registro=$25.50"
}
else{
print "categoria 3 tarifa del registro=$46.50"
}
}
}
else{
if (anio>=1971 and anio<=1979)
{
if (peso<2700)
{
print "categoria 4 tarifa de registro=$27"
}
else{
if (peso>=2700 and peso<=3800)
{
print "categoria 5 tarifa de registro=$30.50"
}
else{
print "categoria 6 tarifa de registro=$52.50"
}
}
}
else{
if (anio>=1980)
{
if (peso<3500)
{
print "categoria 7 tarifa de registro=$19.50"
}
else{
print "categoria 8 tarifa de registro=$52.50"
}
}
}
}
fin
Lenguaje C++
Práctica 4 problema 7 (switch)
Escriba un programa que acepte dos números reales de usuario y un código de selección, si el código introducido es 1, haga que el programa sume los dos números introducidos anteriormente y despliegue el resultado; si el código de selección es dos, los números deberán ser multiplicados, si el código de selección es 3 el primer número deberá dividirse entre el segundo. No permita la división entre cero y despliegue un mensaje apropiado cuando se intente ésta división.
Seudocódigo
1.-Inicio
print "Numero1="
read n1
print "Numero2="
read n2
print "Presione 1 si desea sumar"
print "Presione 2 si desea multiplicar"
print "Presione 3 si desea dividir"
print "Seleccione una opcion :"
read opcion
switch(opcion)
{
case 1: resultado=n1+n2
print "El resultado es= ",resultado
break
case 2: resultado=n1*n2
print "El resultado es= ",resultado
break
case 3: if(n2!=0)
{
resultado=(n1/n2)
print "El resultado es= ",resultado
}
else{
print "No se permite division entre 0"
}
break
print "Error en opcion"
}
#include <iostream.h>
#include <conio.h>
main()
{
float n1,n2,resultado;
int opcion;
cout<<"\nNumero1=";
cin>>n1;
cout<<"Numero2=";
cin>>n2;
cout<<"\nPresione 1 si desea sumar";
cout<<("\nPresione 2 si desea multiplicar");
cout<<("\nPresione 3 si desea dividir");
cout<<("\nSeleccione una opcion :");
cin>>opcion;
switch(opcion)
{
case 1:resultado=n1+n2;
cout<<"El resultado es= "<<resultado<<endl;
break;
case 2:resultado=n1*n2;
cout<<"El resultado es= "<<resultado<<endl;
break;
case 3:if(n2!=0)
{
resultado=(n1/n2);
cout<<"El resultado es= "<<resultado<<endl;
}
else{
cout<<"No se permite division entre 0";
}
break;
cout<<"Error en opcion";
}
getch();
}
Lenguaje C++
Práctica 5
Problema 1
Construya un programa para leer los datos, matrícula y 5 calificaciones de un alumno imprima la matrícula, el promedio y la palabra aprobado si el alumno tiene un valor >=70 y la palabra no aprobado en caso contrario
Seudocódigo
1.- Inicio
print "matricula="
read m
print "calificacion 1="
read calif1
print "calificacion 2="
read calif2
print "calificacion 3="
read calif3
print "calificacion 4="
read calif4
print "calificacion 5="
read calif5
promedio=(calif1+calif2+calif3+calif4+calif5)/5
print "promedio=", promedio
if (promedio>=70)
{
print "aprobado"
}
else{
if (promedio<70)
{
print "no aprobado"
}
}
fin
Lenguaje C++
Problema 2
En una tienda efectúan un descuento a los clientes dependiendo del monto de la compra, El descuento se efectúa con base en el siguiente criterio si el monto es < $500 no hay descuento si el monto está comprendido entre $500 y $1000 el descuento es 5%.
Si el monto de la compra ésta comprendido entre $1001 y $7000 el descuento es 11%
Si el monto está comprendido entre $7001 y $15000 el descuento es 18%
Si el monto es mayor a $15000 el descuento es 25%
Haga un programa que solicite el monto de la compra de un cliente y determine lo que el mismo debe pagar.
Seudocódigo
1.- Inicio
print "Monto de la compra del cliente "
read monto;
if(monto<500)
{
total=(monto*1);
print " Total a pagar ",total
}
else
{
if(monto>=500andmonto<=1000)
{
total=(monto)-(monto*.05);
print " Total a pagar ",total
}
else
{
if(monto>1000 and monto<=7000)
{
total=(monto)-(monto*.11);
print " Total a pagar ",total }
else
{
if(monto>7000 and monto<=15000)
{
total=(monto)-(monto*.18);
print " Total a pagar ",total }
else
{
if(monto>15000)
{
total=(monto)-(monto*.25);
print "Total a pagar ",total
}
}
}
}
}
Lenguaje C++
Práctica 5 problema 3
El costo de las llamadas telefónicas internacionales depende de la zona geográfica en la que se encuentre el país destino y el número de minutos hablados, en la siguiente tabla se expresa el costo del minuto por zona.
Clave Zona Precio
12 América del Norte $2.00
15 América Central $2.20
18 América del Sur $4.50
19 Europa $3.50
23 Asia $6.00
25 África $6.00
29 Oceanía $5.00
Construya un programa que le permita calcular e imprimir el costo total de una llamada. Debe de considerar la clave de la zona geográfica a la que se llamó y la duración en minutos de la llamada
Seudocódigo inicio
clave int
min,ct real
print "Duracion de la llamada en minutos= "
read min
print "Clave 12 America del Norte"
print "Clave 15 America Central"
print "Clave 18 America del Sur"
print "Clave 19 Europa"
print "Clave 23 Asia"
print "Clave 25 Africa"
print "Clave 29 Oceania"
print "Elegir clave:"
read clave
switch (clave)
{
case 12: ct=min*2
print "El costo total por la llamada a America del Norte es =$",ct
break
case 15: ct=min*2.2
print "El costo total por la llamada a America Central es=$",ct
break
case 18: ct=min*4.5
print "El costo total por la llamada a America del sur es=$",ct
break
case 19: ct=min*3.5
print "El costo total por la llamada a Europa es=$",ct
break
case 23: ct=min*6
print "El costo total por la llamada a Asia es=$%f",ct
break
case 25: ct=min*6
print "El costo total por la llamada a Africa es=$",ct
break
case 29: ct=min*5
print "El costo total por la llamada a Oceania es=$",ct
break
default: print "Error en clave"
}
Lenguaje C++
Práctica 5 problema 4
Crear un programa que diseñe un menu de restaurant para 6 artículos, solicite la orden y calcule el monto total si el IVA=subtotal *0.11.
Seudocódigo
1.-Inicio
p1=30.00
p2=10.00
p3=15.00
p4=25.00
p5=55.00
p6=45.00
c1=c2=c3=c4=c5=c6=0
t1=t2=t3=t4=t5=t6=0
subtotal=0
IVA=0
prod=1
while (prod!=0)
{
print "MENU"
print "1- Hambuerguesa"
print "2- Soda"
print "3- Papas fritas"
print "4- Ensalada"
print "5- Nieve"
print "6- Aros de cebolla"
print "0- Terminar orden"
print "No. producto: ";
read prod;
switch (prod)
{
case 1: print "Cantidad de Hamburguesas: "
read c1
subtotal=subtotal+c1*p1
t1=t1+c1
break
case 2: print "Sodas: "
read c2
subtotal=subtotal+c2*p2
t2=t2+c2
break
case 3: print "Cantidad de papas fritas: "
read c3;
subtotal=subtotal+c3*p3
t3=t3+c3
break
case 4: print "Cantidad de Ensaladas: "
print c4
subtotal=subtotal+c4*p4
t4=t4+c4
break
case 5: print "Cantidad de Nieve: "
read c5
subtotal=subtotal+c5*p5
t5=t5+c5
break
case 6: print "Cantidad de aros de cebolla: "
read c6
subtotal=subtotal+c6*p6
t6=t6+c6
break
case 0: IVA=subtotal*0.11;
total=subtotal+IVA;
if (t1>0)
{
print t1, " producto1 ",(t1*p1)
}
if (t2>0)
{
print t2, "producto2 ",(t2*p2)
}
if (t3>0)
{
print t3, "producto3 ",(t3*p3)
}
if (t4>0)
{
print t4, "producto4 ",(t4*p4)
}
if (t5>0)
{
print print t5, "producto5 ",(t5*p5)
}
if (t6>0)
{
print t6, "producto6 ",(t6*p6)
}
print " subtotal= $",subtotal
print " IVA= $",IVA
print " total= $",total
break
default: print "Error en producto"
}
}
#include <conio.h>
#include <iostream.h>
void main ( )
{
float total, subtotal, IVA, p1, p2, p3, p4, p5, p6,c1,c2,c3,c4,c5,c6,t1,t2,t3,t4,t5,t6;
int prod;
p1=30.00;
p2=10.00;
p3=15.00;
p4=25.00;
p5=55.00;
p6=45.00;
c1=c2=c3=c4=c5=c6=0;
t1=t2=t3=t4=t5=t6=0;
subtotal=0;
IVA=0;
prod=1;
while (prod!=0)
{
cout<<"MENU"<<endl;
cout<<"1- Hambuerguesa"<<endl<<"2- Soda"<<endl<<"3- Papas fritas"<<endl;
cout<<"4- Ensalada"<<endl<<"5- Nieve"<<endl<<"6- Aros de cebolla"<<endl;
cout<<"0- Terminar orden"<<endl;
cout<<"No. producto: ";
cin>>prod;
switch (prod)
{
case 1: cout<<"Cantidad de Hamburguesas: ";
cin>>c1;
subtotal=subtotal+c1*p1;
t1=t1+c1;
break;
case 2: cout<<"Sodas: ";
cin>>c2;
subtotal=subtotal+c2*p2;
t2=t2+c2;
break;
case 3: cout<<"Cantidad de papas fritas: ";
cin>>c3;
subtotal=subtotal+c3*p3;
t3=t3+c3;
break;
case 4: cout<<"Cantidad de Ensaladas: ";
cin>>c4;
subtotal=subtotal+c4*p4;
t4=t4+c4;
break;
case 5: cout<<"Cantidad de Nieve: ";
cin>>c5;
subtotal=subtotal+c5*p5;
t5=t5+c5;
break;
case 6: cout<<"Cantidad de aros de cebolla: ";
cin>>c6;
subtotal=subtotal+c6*p6;
t6=t6+c6;
break;
case 0: IVA=subtotal*0.11;
total=subtotal+IVA;
if (t1>0)
{
cout<<t1<<" producto1 "<<(t1*p1)<<endl;
}
if (t2>0)
{
cout<<t2<<" producto2 "<<(t2*p2)<<endl;
}
if (t3>0)
{
cout<<t3<<"producto3 "<<(t3*p3)<<endl;
}
if (t4>0)
{
cout<<t4<<"producto4 "<<(t4*p4)<<endl;
}
if (t5>0)
{
cout<<t5<<"producto5 "<<(t5*p5)<<endl;
}
if (t6>0)
{
cout<<t6<<"producto6 "<<(t6*p6)<<endl;
}
cout<< " subtotal= $"<<subtotal<<endl;
cout<< " IVA= $"<<IVA<<endl;
cout<< " total= $"<<total<<endl;
break;
default: cout<<"Error en producto"<<endl;
}
}
getch ();
}
Lenguaje C++
Práctica 5 problema 5
Calcular la suma de los n primeros numeros enteros utilizando una instrucción de repetición s=1+2+3.....+N.
Seudocódigo
1.-Inicio
n,suma,i int
print "n="
read n
suma=0
i=0
while (i<=n)
{
suma=suma+i
i=i+1
}
print"suma de lo primeros",n,"enteros es ",suma
Fin
Lenguaje C++
Práctica 5 problema 6
Calcular E(x)=1+x+((x2)/2!)+........((nn)/n!)
a) Para n que es un entero leído por el teclado.
b) Desplegar el valor de E(x).
Seudocódigo
1.-Inicio
e=1,x,n,contador=1,i,fact real
print"n="
read n
while (contador<=n)
{
fact=1
i=contador
while (i!=1)
{
fact=fact*1
i=i-1
}
e=e+pow(contador,contador)/fact
contador=contador+1
}
print"e(x)=",e
Fin
Lenguaje C++
Práctica 5 problema 7
Determine un programa para leer 10 números enteros utilizando un ciclo y encontrar el máximo y el mínimo valor e imprimirlos.
Seudocódigo
1.-Inicio
conta=1,numero,mayor,menor int
while (conta<=10)
{
print "numero="
read numero
if (conta==1)
{
mayor=numero
menor=numero
}
if (numero>mayor)
{
mayor=numero
}
if (numero<menor)
{
menor=numero
}
conta=conta+1
}
print "el valor mayor=",mayor
print "el valor menor=",menor
Fin
Lenguaje C++
Parte 2 de la práctica
Seudocódigo
1.-Inicio
conta=1,numero,mayor,menor,posmay,posmen int
while (conta<=10)
{
print "numero="
read numero
if (conta==1)
{
mayor=numero
menor=numero
posmay=posmen=1
}
if (numero>mayor)
{
mayor=numero
posmay=conta
}
if (numero<menor)
{
menor=numero
posmen=conta
}
conta=conta+1
}
print "el valor mayor=",mayor
print "el valor menor=",menor
print "posicion mayor=",posmay
print "posicion menor=",posmen
Fin
Lenguaje C++
Práctica 6 problema 1
Escriba un programa para calcular el promedio aritmético de un conjunto de números, se puede calcular la media geométrica y armónica. La media geométrica de un conjunto de n números x1,x2,.....xn es
y la media armónica es
Seudocódico
1.-Inicio
n,x,prod,suma,c,mg,ma real
print "valor n= "
read n
prod=1
suma=0
for (c=1 to n step c=c+1)
{
print "x="
read x
prod=prod*x
suma=suma+(1.0/x)
}
mg=pow(prod,1.0/n)
ma=n/suma
print " media geometrica= ",mg
print " media aritmetica= ",ma
Práctica 6 problema 2
La cantidad de clientes que llegan a un concurrido banco de Nueva York se pueden calcular utilizando la función de probabilidad poisson
donde x = cantidad de clientes
landa= Promedio de clientes que llegan por minuto
e = número de Euler (2.71828)
Por ejemplo, si el promedio del clientes que entran en el banco es de 3 x min
landa= 3 por lo tanto la probabilidad de que llegue un cliente es
y la probabilidad de que dos clientes lleguene en cualquier minuto es
utilizando la función de probabilidades poisson, escriba un programa que calcule y despliegue la probabilidad de que un número variable de 1 a 10 clientes lleguen en cualquier minuto, cuando el promedio de llegada es de 3 clientes x minuto.
Seudocódigo
1.- Inicio
p,fact,i real
x int
print.setf(ios::fixed)
print setprecision(2)
for(x=1 to 10 step x=x+1)
{
for(i=1 to x step i=i+1)
{
fact=fact*i
}
p=(pow (3,x)*exp (-3))/fact
print "x= ",x," p= ",p
}
Lenguaje C++
Práctica 6 problema 3
Escriba un programa que acepte uno a la vez, 10 valores individuales de galones, y convierta cada valor introducido a su equivalente en litros, antes de solicitar el siguiente valor. Recuerde que cada galón equivale a 3.785 litros.
Seudocódigo
1.-Inicio
galon,litros,i real
for(i=1 to 10 step i=i+1)
{
print " galones=? "
read galon
litros=galon*3.785
print " galones=? ",galon," litros=? ",litros
}
Lenguaje C++
Práctica 6 problema 4
Un modelo para calcular la población mundial en miles de millones de personas está dado por la ecuación
donde
t es el tiempo en años
t = 0 y representa Enero de 1985
t = 1 representa Enero de 1986
t = 2 representa Enero de 1987
t = 5 representa 1990
Escriba un programa que muestre una tabla anual de poblacón de Enero de 1990 hasta Enero de 2005.
Seudocódigo
1.-Inicio
poblacion real
a, anio int
anio=1990
print "Anio poblacion"
for (a=5 to 20 step a=a+1)
{
poblacion=4.88*(1+exp(0.02*a))
print anio," ", poblacion
anio=anio+1
}
Lenguaje C++
Práctica 6 problema 5
Calcule el aumento de sueldo para un grupo de empleados de una empresa teniendo en cuenta el siguiente criterio:
Si el sueldo es inferior a 1000 el aumento es el 15%
Si el sueldo es mayor o igual a 1000 el aumento es el 12%
Imprima el sueldo nuevo del trabajador y el total de la nomina de la empresa considerando éste nuevo aumento.
Para el fin de datos el sueldo se expresa con -1.
Seudocódigo
1.-Inicio
total_nomina=0.0, sueldo real
print "sueldo de empleado="
read sueldo
while (sueldo !=-1)
{
if (sueldo<1000)
{
sueldo=sueldo*1.15
}
else
{
sueldo=sueldo*1.12
}
total_nomina+=sueldo
print "sueldo nuevo ",sueldo
print "sueldo siguiente empleado:"
read sueldo
}
print "total nomina:",total_nomina
Fin
Lenguaje C++
Práctica 6 problema 6
Haga un programa que genere 100 números enteros en forma aleatoria y obtenga la suma de los números impares y el promedio de los números pares.
Seudocódigo
1.-Inicio
numero,sumaimpar=0,sumapar=0,c=0,i int
randomize()
for (i=1 to100 step i=i+1)
{
numero=random(100)
if (numero%2==0)
{
sumapar=sumapar+numero
c=c+1
}
else
{
sumaimpar=sumaimpar+numero}
}
print " la suma impar es= ",sumaimpar
print " promedio de los numeros pares es ",sumapar/c
Fin
Lenguaje C++
Práctica 6 problema 7
Hacer un programa para calcular lo que hay que pagar por un conjunto de llamadas telefónicas. Por cada llamada se ingresa el tipo (internacional, nacional, local) y la duración en minutos. El criterio que se sigue para calcular el costo de cadallamada es el siguiente:
Internacional: 3 primeros minutos $7.54
cada minuto adicional $3.03
------------------------------------------------
Nacional: 3 primeros minutos $ 1.20
cada minuto adicional $0.48
------------------------------------------------
Local: Las primeras 50 llamadas no se
cobran, luego cadallamada cuesta
$0.60
------------------------------------------------
Seudocódigo
1.-Inicio
tipo char
minutos, costo, local=0, cuenta, costolocal real
print "tipo de llamada="
read tipo
while (tipo!='f')
{
print "minutos="
read minutos
switch (tipo)
{
case 'I':
case 'i':
if (minutos>3)
{
costo=7.54+(minutos-3)*3.03
}
else
{
costo=7.54
}
cuenta=cuenta+costo
break
case 'N':
case 'n':
if (minutos>3)
{
costo=1.20+(minutos-3)*0.48}
else
{
costo=1.20
}
cuenta=cuenta+costo
break
case 'L':
case 'l':
local=local+1
if (local>50)
{
costolocal=costolocal+0.60
}
cuenta=cuenta+costolocal
break
}
print "tipo de llamada I(internacional), N(nacional), L(local), F(fin de cuenta):"
read tipo
}
print "cuenta=",cuenta
Fin
Lenguaje C++
Práctica 6 problema 8
Un fabricante prueba 5 generadores eléctricos midiendo los voltajes de salida en 3 tiempos diferentes.
a) Escribe un programa que utilice una gasa anidada para introducir los resultados de las pruebas de cada generador y que calcule y despliegue el voltaje promedio de cada generador.
Seudocódigo
1.-Inicio
{
v,g,sumav=0 real
prom,voltaje real
for (g=1 to 5 step g=g+1)
{
print "no. generador=",g
for (v=1 to 3 step v=v+1)
{
print "prueba voltaje",v," = "
read voltaje
sumav=sumav+voltaje
}
prom=sumav/3
print "promedio voltaje ",prom
sumav=0
}
Fin
Lenguaje C++
b) Modifique el programa escrito para que calcule y despliegue el voltaje promedio de todos los generadores.
Seudocódigo
1.-Inicio
sumav=0,sumag=0,prom,voltaje real
g,v int
for (g=1 to 5 step g=g+1)
{
sumav=0
print "no. generador =",
for (v=1 to 3 step v=v+1)
{
print " voltaje de prueba " ,v," = "
read voltaje
sumav=sumav+voltaje
}
prom=sumav/3
sumag=sumag+prom
}
prom=sumag/5
print "promedio de todos los generadores es ",prom
Fin
Lenguaje C++
c) Vuelva a escribir el programa del ejercicio a) para que elimine la gasa interna. Para hacer esto tiene que introducir 3 voltajes de cada generador en lugar de uno a la vez. Cada voltade debe de almacenar en una variable con nombre propio antes de calcular el promedio.
Seudocódigo
1.-Inicio
sumav=0,prom real
g,v1,v2,v3 int
for (g=1 to 5 step g=g+1)
{
sumav=0
print "no. generador ",g
print " voltaje 1= "
read v1
print " voltaje 2= "
read v2
print " voltaje 3= "
read v3
sumav=v1+v2+v3
prom=sumav/3
print " promedio="
}
Fin
Lenguaje C++
Práctica 7
Problema 1
Escriba un programa para aceptar una calificación
a) El programa debe de solicitar una calificación continuamente mientras no se introduzcan calificaciones inválidas.Una calificación inválida es cualquiera menor de 0 o mayor de 100. Después de que se introduzca una calificación válida el programa debe mostrar el valor de ella.
Seudocódigo
1.- Inicio
calif int
do
{
print "calificacion="
read calif
if (calif>0 and calif<=100)
{
print"calificacion=",calif
}
}
while (calif>0 and calif<=100)
Fin
Lenguaje C++
b) Modifique el programa del a) cuando se introduzca una calificación inválida.
Seudocódigo
1.- Inicio
calif int
do
{
print "calificacion="
read calif
if (calif >0 and calif<=100)
{
print "calificacion=",calif
}
else
print "calificacion invalida"
}
while (calif>0 and calif<=100)
Fin
Lenguaje C++
c) Modifique el programa del b) para que el programa permita al usuario salir del programa al introducir el número 999.
Seudocódigo
1.- Inicio
calif int
do
{
print " calificacion="
read calif
if (calif>0 and calif<=100)
{
print "calificacion =",calif
}
else{
if (calif !=999)
{
print "calificacion invalida"
}
}
}
while (calif !=999)
Fin
Lenguaje C++
d) Modifique el programa del b) para que termine automáticamente después de que se introduzcan 5 calificaciones inválidas.
Seudocódigo
1.-Inicio
calif, contador=0 int
do
{
print " calificacion="
read calif
if (calif>0 and calif <=100)
{
print " calificacion=",calif
}
else
{
print " calificacion invalida"
contador=contador+1
}
}
while (contador <5)
Fin
Lenguaje C++
Problema 2
En un estadio se tienen 5 tipos diferentes de localidades, las cuales se identifican por una clave numérica que es un valor comprendido entre 1 y 5. Los precios de cada localidad y los datos referentes a las ventas de boletos para el próximo juego se proporcionan como sigue:
Construya un programa que:
a) Lea los precios de las localidades.
b) Lea los datos de las ventas de los boletos.
c) Imprima para cada venta la clave, la cantidad y el importe total de los boletos vendidos en ésta venta.
d) Calcule, imprima la cantidad de boletos vendidos de cada tipo.
e) Calcule, imprima la racaudación total del estadio. Nota considere que en una venta solo se venden boletos de un tipo.
Seudocódigo
1.-Inicio
p1, p2, p3, p4, p5 real
l1=0, l2=0, l3=0, l4=0, l5=0 int
clave, cantidad int
total_rec=0 real
print "precio localiad 1 :"
read p1
print "precio localiad 2 :"
read p2
print "precio localiad 3 :"
read p3
print "precio localiad 4 :"
read p4
print "precio localiad 5 :"
read p5
do
{
print "clave localidad: "
read clave
print "cantidad de boletos: "
read cantidad
switch (clave)
{
case 1: l1=l1+ cantidad
print "numero de boletos localidad 1:",cantidad
print "total=",(p1*cantidad)
break
case 2: l2=l2+ cantidad
print "numero de boletos localidad 2:",cantidad
print "total=",(p2*cantidad)
break
case 3: l3=l3+ cantidad
print "numero de boletos localidad 3:",cantidad
print "total=",(p3*cantidad)
break
case 4: l4=l4+ cantidad
print "numero de boletos localidad 4:",cantidad
print "total=",(p4*cantidad)
break
case 5: l5=l5+ cantidad
print "numero de boletos localidad 5:",cantidad
print "total=",(p5*cantidad)
break}}
while (clave !=-1 and cantidad !=-1)
print "cantidad total localidad 1 :",l1
print "cantidad total localidad 2 :",l2
print "cantidad total localidad 3 :",l3
print "cantidad total localidad 4 :",l4
print "cantidad total localidad 5 :",l5
total_rec=(l1*p1)+(l2*p2)+(l3*p3)+(l4*p4)+(l5*p5)
print "recaudacion total de boletos es=",total_rec
Fin
Lenguaje C++
Problema 3
Muchos clubes deportivos profesionales utilizan una computadora para realizar el análisis de exploración de los informes de los jugadores aspirantes. Suponga que un equipo profesional de hockey tiene tal sistema, para cada jugador debe tener la siguiente información:
Nombre delm jugador, edad, altura (pulgadas), peso (libras), goles hechos en la última temporada, asistencia en la última temporada, minutos penalizados en ella, factor de la liga (número real).
Los jugadores se evalúan de acuerdo a la siguiente fórmula:
goles+asistencia+(minutos_penalizados)/4+(altura+peso)/5-edad)*factor_liga.
Diseñe un programa para leer un conjunto de informes a explorar imprimir por cada jugador la cifra de evaluación calculada. Al final debe proporcionar el nombre y la cifra de evaluación del jugador que haya obtenido la más alta calificación.
Seudocódigo
1.- Inicio
edad,peso,goles,asistencia,minutos,factor,evaluar,mayor,otro int
altura real
nom[10],nombre[10] char
mayor=0
do
{
print "nombre del jugador: "
read nombre
print "edad: "
read edad
print "altura (pies): "
read altura
print "peso (libras):"
read peso
print "goles hechos en la ultima temporada: "
read goles
print "asistencia en la ultima temporada: "
read asistencia
print "minutos penalizados: "
read minutos
print "factor de liga: "
read factor
evaluar=(goles+asistencia+(minutos)/4+(altura+peso)/5-edad)*factor
if (evaluar>mayor)
{
mayor=evaluar
strcpy (nom,nombre)
}
print "nombre jugador: ",nombre
print "calificacion= ",evaluar
print " Desea registro de otro jugador presiona 1 si 0 no: "
read otro
}
while (otro==1)
print " el jugador ",nom
print " el de mayor puntuacion "
print " con evaluacion de: ",mayor
Fin
Lenguaje C++
Problema 4
Una compañía de seguros a reunido datos cosendientes a todos los accidentes de tránsito ocurridos durante el año. Los datos que se tienen en cada conductor involucrado en un accidente, son los siguientes:
Edad del conductor, sexo, código de ciudad (1 capital, 2 provincia).
Diseñar un programa que lea los datos e imprima los siguientes valores estadísticos de los conductores que han participado en accidenes.
a) Porcentaje de conductores menores de 25 años.
b) Porcentaje de conductores del sexo femenino.
c) Porcentaje de conductores del sexo femenino.
d) Porcentaje de conductores que son originarios de la capital.
Seudocódigo
1.- Inicio
edad,sexo,codigo,conta=0,c25=0,cf=0,cm=0,cc=0,p25,pf,pm,pcc,otro int
do
{
print "edad del conductor= "
read edad
print "sexo 1(femenino) 2(masculino)= "
read sexo
print "codigo de ciudad (1-capital, 2-provincia)"
read codigo
conta=conta+1
if (edad<25)
{
c25=c25+1
}
switch (sexo)
{
case 1:
cf=cf+1
break
case 2:
if(edad>=18 and edad<=25)
{
cm=cm+1
}
break
default: print "error dato"
}
if (codigo==1)
{
cc=cc+1
}
print "otro registro 1.-si 2.-no)= "
read otro
}
while (otro==1)
p25=(c25*100)/conta
pf=(cf*100)/conta
pm=(cm*100)/conta
pcc=(cc*100)/conta
print "porcentaje de conductores <25= ",p25
print "porcentaje de conductores femeninos",pf
print "porcentaje de conductoree masculinos ",pm
print "porcentaje de conductores originarios de la capital",pcc
Fin
Lenguaje C++
Problema 5
El departamento de policía y tránsito de la ciudad ha recopilado información, acumulada durante determinado periodo de las infracciones levantadas por sobrepasar los limites de velocidad etablecidos.
El departamento dividió a la ciudad 4 cuadrantes, para cada uno de los cuales desea obtener datos estadísticos que muestren las infracciones levantadas:
Número de registro del carro, cuadrante donde fue levantada la infracción (1,2,3,4), límite de velocidad en Km/H, velocidad a la que iba el vehículo en Km/H.
Nota: el monto de la multa se calcula multiplicando 50 por cada Km/H que exceda el límite de velocidad. Crear un programa para calcular el siguiente reporte.
Vehículo Velocidad reg. Límites de velocidad Multa
------------------------------------------------------------------------------------------
Cuadrante 1: Número de infracciones:
Monto recaudado en multas:
Cuadrante 2: Número de infracciones:
Monto recaudado en multas:
Cuadrante 3: Número de infracciones:
Monto recaudado en multas:
Cuadrante 4: Número de infracciones:
Monto recaudado en multas:
Seudocódigo
1.- Inicio
cuadrante, numero_registro_v,velocidad_limite,velocidad_reg,multa,otro int
nc1=0,nc2=0,nc3=0,nc4=0,totalc1=0,totalc2=0,totalc3=0,totalc4=0 int
do
{
print "Numero registro vehiculo= "
read numero_registro_v
print "no. cuadrante= "
read cuadrante
print "velocidad limite= "
read velocidad_limite
print "velocidad del vehiculo= "
read velocidad_reg
multa=(velocidad_reg-velocidad_limite)*50
print "registro vehiculo velocidad regular limites de velocidad multa"
print numero_registro_v," ",velocidad_reg," ",velocidad_limite,"",multa
switch (cuadrante)
{
case 1: nc1=nc1+1
totalc1=totalc1+multa
break
case 2: nc2=nc2+1
totalc2=totalc2+multa
break
case 3: nc3=nc3+1
totalc3=totalc3+multa
break
case 4: nc4=nc4+1
totalc4=totalc4+multa
default: print "error cuadrante"
break
}
print "otro registro 1 si 2 no ="
read otro
}
while (otro==1)
print "cuadrante 1= "
print "numero de infracciones=",nc1
print "monto recaudado en multas=",totalc1
print "cuadrante 2= "
print "numero de infracciones=",nc2
print "monto recaudado en multas=",totalc2
print "cuadrante 3= "
print "numero de infracciones=",nc3
print "monto recaudado en multas=",totalc3
print "cuadrante 4= "
print "numero de infracciones=",nc4
print "monto recaudado en multas=",totalc4
Fin
Lenguaje C++
Problema 6
Una pelota de golf se lanza desde un aeroplano. La distancia, d, que la pelota cae en 3 segundos está dada por la ecuación d=(1/2gt*t).
Donde es la aceleración producida por la gravedad y es=32 pies/seg*seg (9.81m/seg*seg).
Utilizando ésta información escriba un programa que muestre la distancia que la pelota cae en cada intervalo de 2 segundos durante 20 segundos y la distancia total que la pelota ha recorrido al final de cada intervalo. La salida debe completar la siguiente tabla.
Tiempo Distancia en el intervalo actual Distancia total
0
---------------------------------------------------------------------------
2
---------------------------------------------------------------------------
4
---------------------------------------------------------------------------
6
---------------------------------------------------------------------------
8
---------------------------------------------------------------------------
10
---------------------------------------------------------------------------
12
---------------------------------------------------------------------------
14
---------------------------------------------------------------------------
16
---------------------------------------------------------------------------
18
---------------------------------------------------------------------------
20
---------------------------------------------------------------------------
Seudocódigo
1.- Inicio
d,dt,t int
print "tiempo distancia en el distancia"
print " intervalo actual total"
print "----------------------------------------------------------"
dt=0
for (t=0;t<=20;t=t+2)
{
d=1.0/2.0*32*t*t
dt=dt+d
print,"",d," ",dt
Fin
Lenguaje C++
Problema 7
Escriba un programa que calcule y despliegue los valores para "y" cuando y=xz/(x-z).
El programa debe calcular "y" para los valores de "x" en un rango de entre 1 y 5 y los valores de "z" en un rango de entre 2 y 6. La variable "x" debe controlar la gasa externae incrementarse en pasos de 1 y z también debe de incrementarse en pasos de 1. Así mismo el programa debe de mostrar el mensaje función indefinida cuando los valores de "x" y "z" sean iguales.
Seudocódigo
1.- Inicio
x,y,z real
print "x y z"
for(x=1;x<=5;x=x+1)
{
for(z=2;z<=6;z=z+1)
{
if (x==z)
{
print "funcion indefinida"
}
else
{
y=(x+z)/(x-z)
print x," ",z," ",y
}
}
}
Fin
Lenguaje C++
Problema 8
La probabilidad de que una llamada individual de teléfono dure menos de t minutos se puede calcular mediante la siguiente función exponencial de probabilidad.
Probabilidad de que una llamada dure menos de un minuto.
Donde a es la duración promedio de una llamada y "e" es el número de euler (2.71828).
Suponiendo que la duración de la llamad promedio es de 2 minutos. La probabilidad de que la llamada dure menos de un minuto es:
Utilizando ésta ecuación de probabilidad escriba un programa que calcule o despliegue una lista de la probabilidad de que una llamada dure menos de 1 minuto a menos de 10 minutos en incrementos de 1 minuto.
Seudocódigo
1.- Inicio
p,t real
print "T\tprobabilidadde una llamada dure menos de 1 minuto "
for (t=1;t<=10;t=t+1)
{
p=1-exp(-t/2.0)
print t,"\t",p
}
Fin
Lenguaje C++