sábado, 19 de marzo de 2011

practicas extras


Problema 1
1).-inicio
tf=40,l=7365,a=11.7e-6,log real
t0=0 real
print"grados longitud expandida"
while(t0<40)
{
log=a*l*(tf-t0)
print,t0," ",log
t0=t0+5
}
Fin



Problema 2
1).-inicio
maxnums,i,sumap=0,suman=0,n int
print"cuantos numeros= "
read,maxnums
for(i=1 to i<=maxnums step i=i+1)
{
print "numero entero= "
read,n
if(n<0)
{
suman=suman+n
}
else
{
if(n>0)
{
sumap=sumap+n
}
}
}
print "suma de los numeros positivos= ",sumap
print "suma de los numeros negativos= ",suman
Fin


Problema 3
1).-inicio
maxnums,i,sumap=0,suman=0,n int
cn=0,cp=0 int
print"cuantos numeros= "
read,maxnums
for(i=1 to i<=maxnums¡ step i=i+1)
{
print "numero entero= "
read,n
if(n<0)
{
suman=suman+n
cn=cn+1
}
else
{
if(n>0)
{
sumap=sumap+n
cp=cp+1
}
}
}
print "promedio de los numeros positivos= ",(sumap/cp)
print "promedio de los numeros negativos= ",(suman/cn)
Fin



examen problema 1

1)-vcelsius,cantidad,incremento,celsius,farenheit,c=0 int
print”valor incial celsius= "
read,vcelsius
print "Numero de conversiones= "
read,cantidad
print "Incremento de temperatura celsius= "
read,incremento
celsius=vcelsius
while(c<=cantidad) { farenheit=(9.0/5.0)*celsius+32; print "celsius " " farenheit"
print ,Celsius," ",farenheit
celsius=celsius+incremento
c=c+1
}
fin





examen problema 2

1).-inicio
n1,n2,n3,n4,n5 int
i=0 int
print “valor 1= "
read,n1
print "valor 2= "
read,n2
print "valor 3= "
read,n3
print "valor 4= "
read,n4
print "valor 5= "
read,n5
for(i=1; i<=n1; i++)
{
print "*"
}
print ,endl
for(i=1; i<=n2; i++)
{
print "*"
}
print ,endl
for(i=1 to i<=n3 step i++)
{
print "*"
}
print ,endl
for(i=1 to i<=n4 step i++)
{
print "*"
}
print ,endl
for(i=1 to i<=n5 step i++)
{
print "*"
}
print ,endl
fin




examen problema 3

1).-inicio
n ,num,conta=1 int
lim,saldo,nuevo real
print "cuantos clientes deseas registrar:"
read,n
while(conta<=n) { print "numero de cuenta del cliente :" read,num print "limite de credito antes de la recesion:" read,lim print "saldo actual del cliente" read,saldo nuevo=(lim*.5) if(saldo>nuevo)
{
print "exedio limite de credito "<
fin



viernes, 18 de marzo de 2011

practica 7

problema 7.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.

1.- Inicio
c int
do
{print " Calificacion: "
read c
if(c>0 and c<=100)
{print " Calificacion= ",c}
}
while(c>0 and c<=100)
FIN





B) Modifique el programa del a) que avise al usuario cuando se introduzca una calificacion invalida.
1.- Inicio
c int
do
{
print " Calificacion: "
read c
if(c;>0 and c;<=100)
{
print " Calificacion= ",c

}
else
{
print "Calificacion Invalida "

}
}
while(c>0 and c<=100)
FIN




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

1.- Inicio
c int
do
{print" Calificacion: "
read c
if(c>0 and c<=100)
{print " Calificacion= ",c}
else
{
if(c==999)
{ print "Calificacion Invalida "}
}
while(c!=999)
FIN




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

1.- Inicio
c int
int contador=0
do
{print " Calificacion= "
read c
if(c>0 and c<=100)
{print " Calificacion= ",c}
else
{print "Calificacion Invalida "
con=con+1}
}
while(con<5)
FIN



problema 7.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

1.Inicio

p1, p2, p3, p4, p5 real
l1=0,l2=0,l3=0,l4=0,l5=0, clave, cantidad enteros
recaudacion=0 real
print" precio de la localidad 1: "
read p1
print" precio de la localidad 2: "
read p2
print" precio de la localidad 3: "
read p3
print" precio de la localidad 4: "
read p4
print" precio de la localidad 5: "
read p5
do {
print" clave de locaclidad: "
read clave
print" cantidad de boletos: "
read cantidad
switch(clave)
{ case 1: l1=l1+cantidad
print" numero de boletos en la localidad 1: "
print" total: ",(p1*cantidad)
break;
case 2: l2=l2+cantidad
print" numero de boletos en la localidad 2: "<
print" total: ",(p2*cantidad)
break;


case 3: l3=l3+cantidad
print" numero de boletos en la localidad 3: "
print" total: ",(p3*cantidad)
break;
case 4: l4=l4+cantidad
cout<<" numero de boletos en la localidad 4: "
cout<<" total: ",(p4*cantidad)
break;

case 5: l5=l5+cantidad;
print" numero de boletos en la localidad 5: "
print" total: ",(p5*cantidad)
break;
}}
while (clave!=-1 && cantidad!=-1);
print" total de localid 1: ",l1
print" total de localid 2: ",l2
print" total de localid 3: ",l3
print" total de localid 4: ",I4
print" total de localid 5: ",l5
recaudacion=(l1*p1)+(l2*p2)+(l3*p3)+(l4*p4)+(l5*p5);
print" total de recaudacion es: ",recaudacion



problema 7.3

1.- Inicio
mayor=0,sig,e,alt,goles,peso,asist,min,liga,edad Real
nom[10],n[10] char
do
{
Print " Nombre del jugador : "
Read n
Print " Edad del jugador : "
Read edad
Print " Altura del jugador en pulgadas : "
Read alt
Print" Peso en libras : "
Read peso
Print " Goles en la ultima temporada : "
Read asist
Print " Minutos penalizados en ella : "
Read min
Print " Factor de liga : "
Read liga
e = goles+asist+(min/4)+((alt+peso)/5-edad)*liga;
if(mayor
{
mayor = e;
stpcpy(nom,n);
}
Print " Nombre del jugador : ",n;
Print " Calif : ",e;
Print " Desea registrar otro jugador 1)si 2)no = "
Read sig
}
while(sig==1);
Print " El jugador con mayor puntuacion es : ",nom;
Print " Su evaluacion es : ",mayor;
Fin.



PROBLEMA 7.4

Una campaña de seguros a reunido datos conserientos a todos los accidentes de transito ocurridos durante en año. Los datos que se tiene en 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) % de conductores < 25 años
b) % de conductores del sexo femenino
c) % de conductores del sexo masculino con edades comprendidas entre 18 y 25 años
d) % de conductores que son de la capital.


1.- Inicio
p25,pf=0,pm=0,pcc=0 int
edad,codigo,conta=0,otro int
c=25,cf=0,cm=0,cc=0 int
sexo char
do
{
Print " Edad del conductor "
Read edad
Print " Sexo f(femenino) m(masculino) = "
Read sexo
Print " Codigo de la ciudad 1) capital 2) provincia "
Read codigo
conta = conta+1
if(edad<25)
c25 = c25+1
}
switch(sexo)
{
case ' F ' :
case ' f ' : cf = cf+1
break;
case ' M ' :
case ' m ' : if ( edad>=18||edad<=25)
{
cm = cm+1
}
break;
default : Print " Error en edad "
}
if(codigo==1)
{
cc = cc+1
}
Print " Otro registro 1) si 2) no "
Read otro
}
while(otro== 'S'||otro== 's');
p25 = (c25 / conta)*100
pf = (cf / conta)*100
pm = (cm / conta)*100
pcc = (cc . conta)*100
Print " Promedio de los conductores menores de 25 años = ",p25
Print " Promeido de conductores del sexo femenino = ",pf
Print " Promedio de conductores del sexo masculino con edades comprendidas entre 18 y 25 años = ",pm
Print " Promedio de conductores originarios de la capital = ",pcc
Fin.





PROBLEMA 7.5

El departamento de policía y transporte de la ciudad a recopilado información, acumulada durante determinado periodo de las infracciones levantadas para sobrepasar los limites de velocidad establecidos. El departamento divide a la ciudad en 4 cuadrantes para cada uno de los cuales se desea obtener datos estadísticos que muestren las infracciones levantadas. Por cada infracción se tienen los siguientes datos
No de registro del vehículo cuadrante en el que fue levantada la infracción.
Limite de vuelo en k

m/hr velocidad la que iba el vehículo en km/hr. El monto de la multa se calcula multiplicando por 50 por cada km/hr que se exceda el limite de velocidad. Crear un programa para obtener el siguiente reporte :
Vehículo Velocidad Reg Limite de velocidad Multa

Cuadrante 1 : Numero de infracciones
Monto recaudado en multas
Cuadrante 2: Numero de infracciones
Monto recaudado en multas
Cuadrante 3: Numero de infracciones
Monto recaudado en multas
Cuadrante 4: Numero de infracciones
Monto recaudado en multas

1.- Inicio
numero_registtro_v,velocidad_limite,velocidad?reg int
otro,multa,cuadrante int
NC1=0,NC2=0,NC3=0,NC4=0 int
totalC1=0,totalC2=0,totalC3=0,totalC4=0 int
do
{
Print " Numero de 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 Limite velocidad "
Print " " numero registro " " 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 = NC2+1
totalC3 = totalC3+multa
break;
case 4: NC4 = NC4+1
total = totalC4+multa
brea;
default : Print " Error cuadrante "
}
Print " Otro registro 1) si 0) 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.



problema 7.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

1.-inicio
d,dt,t; int

Print " Tiempo Distancia en el Distancia ";
Print " intervalo actual total "l;
Print "----------------------------------------------------";
dt = 0;
for(t=0 to 20 step t=t+2)
{
d = 1.0/2.0*32*t*t
dt = dt+d;
Print t, "\t\t ","\t\t ",dt,endl;



problema 7.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.

x,y,z; Real
Print " x y z "<
for(x=1 to 5 step x=x+1)
{
for(z=2 to 6 step z=z+1)
{
if(x==z)
{
Print " Funcion indefinida ";
}
else
{
y = (x+z)/(x-z);
Print x," ",z," ",y;
}
}
}


Problema 7. 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.


1.- Inicio
p,t; Real
Print "T\t Probabilidad de que una llamada dure menos de un minutos ";
for(t=1 to step 10 t=t+1)
{
p = 1-exp(-t/2.0);
Print t, " \t ",p,;
}




miércoles, 9 de marzo de 2011

practica 6

practica 6.1

1.- Inicio
n,x,c,prod=1,mg,ma,suma=0; real
Print " Valor de n = ";
Read n;
for(c=1 to 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 " Medida geometrica = ",mg
Print " Medida aritmetica = ",ma
}
Fin.




practica 6.2

La cantidad de clientes que llegan a un concurrido banco de New York se puede calcular utilizando la funcion de probabilidad Poisson.
f(k;\lambda)=\frac{e^{-\lambda} \lambda^k}{k!},\,\!
Por ejemplo, si el priomedio de clientes que entrar al banco desde 3 por minuto por lo tanto la probabilidad de que el cliente llegue. = 0.149561 y la probabilidad de que dos clientes lleguen en cualquier minuto es 0.224454 utilizando esto.

Escriba un programa que calcule y despliegue la probabilidad de que un numero variable de 1 a 10 clientes lleguen el cualquier minuto, cuando el promedio de llegada de 3 clientes por minuto.

1.- Inicio
x; entero
La entero
p real
Fact,I real
for ( x = 1 to 10 step x = x +1)
{
fact =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
}
Fin.



practica 6.3

Escriba un programa que acepte uno ala 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 galon equivale a 3.785 litros


1.- Inicio
galon,litros real
I entero
for(I = 1 to 10 step I = I+1)
{
Print " Galones : "
Read galon;
Litros = galon*3.785
Print galon " Galones = ", litros, " Litros "
}
Fin.



practica 6.4

Un modelo para calcular la poblacion mundial en miles de millones de personas esta dado por la ecuacion poblacion = 4.88*(1+e ^0.2t) donde t es el tiempo en años t=0 representa enero 1985 t=1 representa enero 1986 t=3 representa 1987.
Escriba un programa que muestre una tabla anual de poblacion de enero de 1990 hasta enero del 2005.

1.- Inicio
poblacion real
Anio entero
Print " Año Poblacion total "
for ( a =5 to 20 step a = a+1)
{
poblacion = 4.88*(1+exp(0.2*a)
Print Anio," ", poblacion
Anio = Anio + 1
}
Fin.






Practica 6.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 del 15%, si el sueldo es mayor o igual que mil el descuento es del 12%, imprima el sueldo nuevo del trabajador y el total de la nomina de la empresa considerando este aumento.
para el fin de datos el sueldo se expresa con -1

1.- Inicio
Total_nomina=0.0, sueldo real
Print “sueldo del empleado= ”
Read sueldo

while(sueldo !=-1)
{
If(sueldo <1000)
{
sueldo=sueldo*1.15
}
else
{
sueldo=sueldo*1.12
}
total_nomina = total_nomina+sueldo
print ”sueldo nuevo = ”,sueldo
Read sueldo
}
Print ” total nomina= ”,total_nomina
Fin



practica 6.6
Realiza el problema 6.5 usando el do while.

1.- Inicio
Total_nomina=0.0, sueldo real
c=0 int
do
{
Print “ Sueldo del empleado = ”
read,sueldo
{
if(sueldo >0 and sueldo <1000)
{
sueldo = sueldo*1.15
c=c+1
}
else
{
if(sueldo >=1000)
{
sueldo = sueldo*1.12
c = c+1
}
}
if(sueldo ¡= -1)
{
Print ”sueldo nuevo = ”,sueldo
total_nomina = total_nomina+sueldo
}
}
while( sueldo !=-1);
Print ” Total empleados = ”,ce
Print ” Total de nomina = ”,total_nomina
Fin.




Practica 6.7
Haga un programa que genere 100 números enteros en forma aleatoria y obtenga una suma de los números impares y el promedio de los números pares.
N,sumaimpar=0,sumapar=0,c=0 int
randomize( )
fot(I=1 to 5 step I++)
{
N=random (1000)
if(n%2==0)
{
sumapar= sumapar+n
c = c + 1
}
else
{
sumaimpar = sumaimp+n
}
}
Print ” La suma impar es = ”,sumaimpar
Print ” La suma par es = ”,sumapar




practica 6.8

Por cada llamada se ingresa el tipo(internacional,nacional,local)y la duracion en minutos. El criterio que se sigue para calcular el costo de cada llamada 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 Los primeros 50 no se cobran
cada llama cuesta $0.60.


1.- Inicio
tipo char
cuenta=0,costolocal=0,minuto,costo Real
Print " Tipo de llamada = ";
Read tipo
while (tipo!= 'F' || tipo!= 'f')
{
Print " Minutos = ";
Read minutos
switch (tpo)
{
Case ' I ':
Case ' i ': if (minutos>3)
{
costo = 7.85+(minutos-3)*3.03
}
else
{
costo = 7.54
}
break;
Case ' N '
Case ' n ' : if (minutos>1)
{
costo = 1.20+(minutos-3)*0.8
}
else
{
costo = 1.20;
}
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.

practica 6.9

Un fabricante prueba 5 generadores eléctricos midiendo los voltajes de salida. Escriba un programa que utiliza una gasa anidada para producir los resultados de las pruebas de cada generador y que calcule y despliegue el voltaje promedio de cada generador.

1.- Inicio
sumav=0,v,g entero
prom,voltaje Real
for ( g =1 to 5 step g = g+1)
{
Print " No Generador = ";
for ( v=1 to 3 step v = v+1)
{
Print " Prueba voltaje = ";
Read voltaje
sumav = sumav+voltaje;
}
prom = sumav/3
Print " Promedio voltaje = ",prom
sumav = 0
}
Fin.




b) Modifique el programa del a) para que calcule y despliegue el voltaje promedio de todos los generadores.

1.- Inicio
sumav=0,sumag=0 Real
G,V entero
voltaje,prom Real
for (G=1 to 5 step G = G+1)
{
sumav=0
Print " No generador = ",G
for ( V=1 to 3 step V = V+1)
{
Print " Voltaje de prueba ";
Read voltaje
sumav = sumav+voltaje
}
prom = sumav/3
sumag = sumag+prom
}
prom = sumag/5
Print " Promedio de todos los generadores es = ",prom
Fin.




c) Vuelve a escribir el programa del ejercicio A para que elimine la gasa interna. Para hacer esto tiene que introducir 3 voltajes para cada generador en lugar de una ala vez, cada voltaje debe de almacenarse en una variable con nombre propio antes de calcular el promedio.

1.- Inicio
prom,sumaV=0; Real
G; entero
v1,v2,v3; Real
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+v29v3
prom = sumaV/3
Print " Promedio = ",prom
}
Fin.