C++

C++

sábado, 19 de marzo de 2011

Practica 7

PRACTICA 7

Ejercicio 1

Utilizando una funcion DO. Escriba un programa para aceptar una calificacion.  El programa debe solicitar una calificacion continuamente mientras no se introduzcan calificaciones invalidas. Una calificacion invalida es cualquiera < que 0, o, >100.
a) Despues de que se introduzca una calificacion valida el programa debe mostrar el valor de ella.

Pseudocodigo

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

 CODIGO

#include <iostream.h>
#include <conio.h>
void main()
{
int calif;
do
{
cout<<" Calificacion= ";
cin>>calif;
if(calif>0&&calif<=100)
{
cout<<" Calificacion= "<<calif<<endl;
}
}
while(calif>0&&calif<=100);
getch();
}


b) Modifique el programa del a) que avise al usuario cuando se introduzca una calificacion invalida.

Pseudocodigo

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


CODIGO

#include <iostream.h>
#include <conio.h>
void main()
{
int calif;
do
{
cout<<" Calificacion= ";
cin>>calif;
if(calif>0&&calif<=100)
{
cout<<" Calificacion= "<<calif<<endl;
}
else
{
cout<<"Calificacion Invalida ";
}
}
while(calif>0&&calif<=100);
getch();
}




c) Modifique el programa del b) para que permita al usuario salir del programa al introducir el #999.


Pseudocodigo

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


CODIGO

#include <iostream.h>
#include <conio.h>
void main()
{
int calif;
do
{
cout<<" Calificacion= ";
cin>>calif;
if(calif>0&&calif<=100)
{
cout<<" Calificacion= "<<calif<<endl;
}
else
{
if(calif!=999)
{
cout<<"Calificacion Invalida "<<endl;
}
}
}
while(calif!=999);
getch();
}


d) Modifique el programa del b) para que termine automaticamente despues de que se introduzcan 5 calificaciones invalidas.


Pseudocodigo

1.- Inicio
calif int
int contador=0
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


 CODIGO

#include <iostream.h>
#include <conio.h>
void main()
{
int calif;
int contador=0;
do
{
cout<<" Calificacion= ";
cin>>calif;
if(calif>0&&calif<=100)
{
cout<<" Calificacion= "<<calif<<endl;
}
else
{
cout<<"Calificacion Invalida ";
contador=contador+1;
}
}
while(contador<5);
getch();
}



Ejercicio 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  datos referentes a las ventas de boletos para el prox juego se proporcionan de la siguiente manera:

a) lea los precios de las localidades
b) lea los datos de las ventas de boletos
c) imprima para cada venta la clave, cantidad y el importe total de los boletos vendidos
d) calcule e imprima las cantidades de boletos vendidos de cada tipo
e) calcule e imprima la recaudación total


Pseudocodigo

Inicio
p1,p2,p3,p4,p5 real
l1=0, l2=0, l3=0, l4=0, l5=0 int
total_rec=0 real
clave, cantidad int
print " Precio Localidad 1 = "
read p1
print" Precio Localidad 2 = "
read p2
print" Precio Localidad 3 = "
read p3
print" Precio Localidad 4 = "
read p4
print" Precio Localidad 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 de Localidad 1= ",l1
print " Cantidad Total de Localidad 2= ",l2
print " Cantidad Total de Localidad 3= ",l3
print " Cantidad Total de Localidad 4= ",l4
print " Cantidad Total de Localidad 5= ",l5
total_rec=(l1*p1)+(l2*p2)+(l3*p3)+(l4*p4)+(l5*p5)
print " Recaudacion Total de boletos es= ",total_rec
FIN


CODIGO

#include <iostream.h>
#include <conio.h>
void main ()
{
float p1,p2,p3,p4,p5;
int l1=0, l2=0, l3=0, l4=0, l5=0;
float total_rec=0;
int clave, cantidad;
cout<<" Precio Localidad 1 = ";
cin>>p1;
cout<<" Precio Localidad 2 = ";
cin>>p2;
cout<<" Precio Localidad 3 = ";
cin>>p3;
cout<<" Precio Localidad 4 = ";
cin>>p4;
cout<<" Precio Localidad 5 = ";
cin>>p5;
do
{
cout<<" Clave Localidad= ";
cin>>clave;
cout<<" Cantidad de boletos= ";
cin>>cantidad;
switch(clave)
{
case 1:
l1=l1+cantidad;
cout<<" Numero de boletos Localidad 1= "<<cantidad<<endl;
cout<<" Total= "<<(p1*cantidad)<<endl;
break;

case 2:
l2=l2+cantidad;
cout<<" Numero de boletos Localidad 2= "<<cantidad<<endl;
cout<<" Total= "<<(p2*cantidad)<<endl;
break;

case 3:
l3=l3+cantidad;
cout<<" Numero de boletos Localidad 3= "<<cantidad<<endl;
cout<<" Total= "<<(p3*cantidad)<<endl;
break;

case 4:
l4=l4+cantidad;
cout<<" Numero de boletos Localidad 4= "<<cantidad<<endl;
cout<<" Total= "<<(p4*cantidad)<<endl;
break;

case 5:
l5=l5+cantidad;
cout<<" Numero de boletos Localidad 5= "<<cantidad<<endl;
cout<<" Total= "<<(p5*cantidad)<<endl;
break;
}
}
while (clave!=-1&&cantidad!=-1);
cout<<" Cantidad Total de Localidad 1= "<<l1<<endl;
cout<<" Cantidad Total de Localidad 2= "<<l2<<endl;
cout<<" Cantidad Total de Localidad 3= "<<l3<<endl;
cout<<" Cantidad Total de Localidad 4= "<<l4<<endl;
cout<<" Cantidad Total de Localidad 5= "<<l5<<endl;
total_rec=(l1*p1)+(l2*p2)+(l3*p3)+(l4*p4)+(l5*p5);
cout<<" Recaudacion Total de boletos es= "<<total_rec<<endl;
getch();
}


Ejercicio 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 jocquey tiene tal sistema que para cada jugador debe tener la siguiente información:
Nombre del jugador,  Edad,  Altura (en pulgadas),  peso (en libras),  Goles hechos en la ultima temporada,  Asistencia a la ultima temporada,  Minutos penalizados en ella,  Factor de la liga (numero real).  Los jugadores se evalúan de acuerdo a la siguiente formula:
(Goles + Asistencia + (Minutos  Penalizados) / 4 + (Altura + Peso) / 5 - Edad)  * Factor de la liga
Diseñe un programa para leer un conjunto de informes a explorar e 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 mas alta calificación.


CODIGO

#include <iostream.h>
#include <conio.h>
#include <string.h>
void main()
{
char n[10];
char nom[10];
int mayor=0,p,h,e,g,a,min,fl,otro;
float ev;
do
{
cout<<" Nombre del jugador: ";
cin>>n;
cout<<" Edad: ";
cin>>e;
cout<<" Peso: ";
cin>>p;
cout<<" Altura";
cin>>h;
cout<<" Asistencia: ";
cin>>a;
cout<<" Goles: ";
cin>>g;
cout<<" Minutos Penalizados: ";
cin>>min;
cout<<" Factor de Liga: ";
cin>>fl;
ev=(((g+a+min)+((h+p)/4)-e)*fl);
if(ev>mayor)
{
mayor=ev;
strcpy(n=nom);
}
cout<<" Nombre del Jugador: "<<n<<endl;
cout<<" Calificacion: "<<ev<<endl;
cout<<" Desea registrar otro jugador? ( 1(si  2(no ) ";
cin>>otro;
}
while(otro==1);
cout<<" El jugador "<<nom<<" con un calificacion de "<<mayor<<endl;
getch();
}

Ejercicio 4

Una compañia de seguros a reunido datos concernientes a todos los accidentes de transito ocurridos durante el año. Los datos que se tienen de  cada conductor involucrado en un accidente son los siguientes:
Edad del Conductor, Sexo, Codigo de Ciudad (1 Capital, 2 Provincia).
     Diseñar un programa que lea los datos e imprima los siguientes valores estadisticos de los conductores que han participado en accidentes:
a) Porcentaje de conductores < 25 años
b) Porcentaje de conductores de sexo femenino
c) Porcentaje de conductores de sexo Masculino con edades comprendidas entre 18 y 25 años
d) Porcentaje de conductores que son originarios de la capital.

Pseudocodigo

1.- Inicio
cc=0,cf=0,cm=0,c25=0, e,cod int
 s,otro, cont=0  int
 p25,pf,pm,pcc real
do
{
print " Edad: "
read e
print " Sexo: 1(femenino) 2(masculino): "
read s
print " Codigo de ciudad 1)provincia 2)capital: "
read cod
cont=cont+1
if(e<25)
{
c25=c25+1
}
switch(s)
{
case 1:
cf=cf+1
break

case 2:
if(e>=18 && e<=25)
{
cm=cm+1
}
break

default:
print " Error "
break
}
if(cod==1)
{
cc=cc+1
}
print " Otro registro? 1(SI= 2(NO): "
read otro
}
while(otro==1)
p25=(c25*100)*cont
pf=(cf*100)*cont
pm=(cm*100)*cont
pcc=(cc*100)*cont
print " El porcentaje de los conductores menores de 25 anios es: ",p25
print " El porcentaje de los conductores femeninos es: ",pf
print " El porcentaje de los conductores masculinos en la edad de 18-25 es: ",pm
print " El porcentaje de los conductores de la capital es: ",pcc
FIN


CODIGO
#include <iostream.h>
#include <conio.h>
void main()
{
int cc=0,cf=0,cm=0,c25=0, e,cod;
int s,otro, cont=0;
float p25,pf,pm,pcc;
do
{
cout<<" Edad: ";
cin>>e;
cout<<" Sexo: 1(femenino) 2(masculino): ";
cin>>s;
cout<<" Codigo de ciudad 1)provincia 2)capital: ";
cin>>cod;
cont=cont+1;
if(e<25)
{
c25=c25+1;
}
switch(s)
{
case 1:
cf=cf+1;
break;
case 2:
if(e>=18 && e<=25)
{
cm=cm+1;
}
break;
default: cout<<" Error ";
break;
}
if(cod==1)
{
cc=cc+1;
}
cout<<" Otro registro? 1(SI= 2(NO): ";
cin>>otro;
}
while(otro==1);
p25=(c25*100)*cont;
pf=(cf*100)*cont;
pm=(cm*100)*cont;
pcc=(cc*100)*cont;
cout<<" El porcentaje de los conductores menores de 25 anios es: "<<p25<<endl;
cout<<" El porcentaje de los conductores femeninos es: "<<pf<<endl;
cout<<" El porcentaje de los conductores masculinos en la edad de 18-25 es: "<<pm<<endl;
cout<<" El porcentaje de los conductores de la capital es: "<<pcc<<endl;
getch ();
}







Ejercicio 5

El departamento de policia y transito de la ciudad a recopilado informacion acumulada durante cierto tiempo de las infracciones por sobrepasar los limites de velocidad. El departamento dividio la ciudad en 4 cuadrantes para cada uno de los cuales desean obtener datos estadisticos que muestren las infracciones levantadas.
Por cada infraccion se tiene:No. de registro del carro, cuadrante, limite de velocidad y a que velocidad iba el carro.
el monto de la se calcula multiplicando por 50 cada km/h que excedan el limite.

Pseudocodigo

1.- Inicio
c,nr,vl,vr,multa,otro int
nc1=0, nc2=0, nc3=0, nc4=0 int
totalc1=0, totalc2=0, totalc3=0, totalc4=0 int
do
{
print " No. de Registro del Carro = "
read nr
print " No.de Cuadrante = "
read c
print " Velocidad Limite = "
read vl
print " Velocidad Registrada del Carro = "
read vr
multa=(vr-vl)*50
print " Registro del carro = "
print nr
print " Velocidad Registrada del Carro = "
print vr
print " Velocidad limite = "
print  vl
print " Multa = "
print multa
switch(c)
{
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
break
default:
print " Error "
break
}
print " Otro registro?  1)SI  2)NO = "
read otro
}
while(otro==1)
print " Cuadrante 1 "
print " No. Infracciones ",nc1
print " Monto total de multas ",totalc1

print " Cuadrante 2 "
print " No. Infracciones ",nc2
print " Monto total de multas ",totalc2
print " Cuadrante 3 "
print " No. Infracciones ",nc3
print " Monto total de multas ",totalc3

print " Cuadrante 4 "
print " No. Infracciones ",nc4
print " Monto total de multas ",totalc4
FIN


CODIGO

#include <iostream.h>
#include <conio.h>
void main()
{
int c,nr,vl,vr,multa,otro;
int nc1=0, nc2=0, nc3=0, nc4=0;
int totalc1=0, totalc2=0, totalc3=0, totalc4=0;
do
{
cout<<" No. de Registro del Carro = ";
cin>>nr;
cout<<" No.de Cuadrante = ";
cin>>c;
cout<<" Velocidad Limite = ";
cin>>vl;
cout<<" Velocidad Registrada del Carro = ";
cin>>vr;
multa=(vr-vl)*50;
cout<<endl;
cout<<" Registro del carro = ";
cout<<nr<<endl;
cout<<" Velocidad Registrada del Carro = ";
cout<<vr<<endl;
cout<<" Velocidad limite = ";
cout<<vl<<endl;
cout<<" Multa = ";
cout<<multa<<endl;
cout<<endl;
switch(c)
{
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;
break;
default:
cout<<" Error ";
break;
}
cout<<" Otro registro?  1)SI  2)NO = ";
cin>>otro;
cout<<endl;
}
while(otro==1);
cout<<" Cuadrante 1 "<<endl;
cout<<" No. Infracciones "<<nc1<<endl;
cout<<" Monto total de multas "<<totalc1<<endl<<endl;

cout<<" Cuadrante 2 "<<endl;
cout<<" No. Infracciones "<<nc2<<endl;
cout<<" Monto total de multas "<<totalc2<<endl<<endl;

cout<<" Cuadrante 3 "<<endl;
cout<<" No. Infracciones "<<nc3<<endl;
cout<<" Monto total de multas "<<totalc3<<endl<<endl;

cout<<" Cuadrante 4 "<<endl;
cout<<" No. Infracciones "<<nc4<<endl;
cout<<" Monto total de multas "<<totalc4<<endl<<endl;
getch();
}



 Ejercicio 6

Una pelota cae de cierta altura con la formula: 1/2*g*t*t donde g=9.81m/s*s.
Realize 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 a recorrido al final de cada intervalo.
La salida debe de completar la tabla:
tiempo: distancia en el intervalo: distancia total:


Pseudocodigo

1.- Inicio
t,di real
dt=0 real
print " Tiempo =    Distancia Actual =    Distancia Total = "
for(t=0;t<=20;t=t+2)
{
di=(((1.0/2.0)*32)*(t*t))
dt=dt+di
print "\t",t,"\t\t\t",di,"\t\t\t",dt
}
FIN

CODIGO
#include <iostream.h>
#include <conio.h>
void main ()
{
float t,di;
float dt=0;
cout<<" Tiempo =    Distancia Actual =    Distancia Total = "<<endl;
for(t=0;t<=20;t=t+2)
{
di=(((1.0/2.0)*32)*(t*t));
dt=dt+di;
cout<<"\t"<<t<<"\t\t\t"<<di<<"\t\t\t"<<dt<<endl;
}
getch();
}



Ejercicio 7


Realize un programa que calcule y despliegue los valores para Y cuando:
Y=X*Z/(X-Z)
El programa debe de calcular Y para todos los valores de x en un rango de 1-5 y los valores de z de 2-6. La variable X deve controlar el ciclo interno e incrementarse en pasos de 1 en 1 y Z tambien. Asi mismo el programa debe mostrar el mensaje Funcion indefinida cuando los valores de X y Z sean iguales.

Pseudocodigo

1.- Inicio
 x,y,z int
print "x   z   y "
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


CODIGO

#include <iostream.h>
#include <conio.h>
void main ()
{
int x,y,z;
cout<<"x   z   y "<<endl;
for(x=1;x<=5;x=x+1)
{
for(z=2;z<=6;z=z+1)
{
if(x==z)
{
cout<<" Funcion Indefinida "<<endl;
}
else
{
y=(x*z)/(x-z);
cout<<x<<"   "<<z<<"   "<<y<<endl;
}
}
}
getch();
}
                               
Ejercicio 8

La probabilidad de que una llamada individual de teléfono dure menos de t minutos se puede calcular mediante:  prob<t min  =     1-e(exp(-t/a)) a: duracion prom de la llamada, e: No. euler(2.71828)
por ejemplo: suponiendo que la duracion prom. sea 2 min es:
1-e(exp(-1/2))=0.3297
calcule y despliegue una lista de la probabilidad de que una llamada dure de 1-10 min en incrementos de 1min

Pseudocodigo

1.-Inicio
p,t real
print " t Probabilidad de que una llamada dure menos de t tiempo "
for(t=1;t<=10;t=t+1)
{
p=(1-exp(-t/2.0))
print t,"    ",p
}
FIN

CODIGO

#include <iostream.h>
#include <conio.h>
#include <math.h>
void main ()
{
float p,t;
cout<<" t Probabilidad de que una llamada dure menos de t tiempo "<<endl;
cout<<endl;
for(t=1;t<=10;t=t+1)
{
p=(1-exp(-t/2.0));
cout<<t<<"    "<<p<<endl;
}
getch();
}

No hay comentarios:

Publicar un comentario