Está en la página 1de 8

1/8

PRACTICA DIRIGIDA Nº 3
Al concluir esta practica habrá reforzado mas su conocimiento en el empleo de las
instrucciones if(), else if(), además conocerá la instrucción switch() que nos
permite elegir una alternativa dentro de muchas. Cada uno de los problemas
resueltos debe analizar, corregir y/o agregar y mostrar los resultados.
Ejm. 22
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
float tarifa,pago,nhoras;
cout<<"Ingrese tarifa por hora o fracción de hora:";cin>>tarifa;
cout<<"Numero Horas de estacionamiento del vehiculo ";
cin>>nhoras;
if(nhoras<=2)
pago=tarifa;
else if(nhoras<=5)
pago=tarifa+2*(nhoras-2);
else
pago=(tarifa+2*(nhoras-2))*0.90;
cout<<"Monto recaudado es:"<<pago<<endl;
}
Ejm. 23
/*La comisión sobre las ventas totales de un empleado esta dado de la
siguiente forma:
-Si las ventas son menores que $70 no se paga por comisión
-Si las ventas esta entre $70 y 500 inclusive, entonces se paga una comisión
de 5% sobre las ventas.
-Si las ventas son mayores que $500, entonces se paga 7.5% de las ventas
mas $60. Escribir un programa que lea el monto de las ventas y luego calcule
la comision a pagar */
#include<iostream>
#define BONIF 60
using namespace std;
//Programa principal
int main()
{
float vta,comis,tasa;

Fundamentos de Programación

//BONIFICACION

Ing. Felix Huari Evangelista

if(promf>10. cin>>n1>>n2>>n3. Felix Huari Evangelista . if(vta>500) comis=vta*tasa+BONIF."<<endl. if (n1<menor) menor=n1. cout<<"El monto de la comision es:"<<comis<<endl. //Programa principal int main() { float promf.n1. cin>>vta. if (vta>0) { if(vta<70) tasa=0. 24 /*Escribir un programa que solicite el ingreso de 3 notas de un alumno para luego calcular el promedio final. else cout<<"El Alumno(a) desaprobo con:"<<promf<<endl. } Ejm. if(n3<menor) menor=n3.n2.. promf=(n1+n2+n3-menor)/2.075.n3. } Fundamentos de Programación Ing. cout<<"\nIngrese las notas:". if(n2<menor) menor=n2.menor=1000.2/8 cout<<"\nIngrese el Monto de la venta:". else if((vta>=70) && (vta<=500)) tasa=0. else tasa=0. else comis=vta*tasa.. se sabe que para el calculo se anula la nota mas baja.5) cout<<"El Alumno(a) aprobo con:"<<promf<<endl. El promedio se calcula la suma de sus 2 mejores notas entre 2 */ #include<iostream> using namespace std.05. Escribir un mensaje de aprobado o desaprobado en cada caso. } else cout<<"El monto de venta es negativo !.

cout<<"\nIngrese el Operador (+. char operador. case '-':rpta=a-b. //Programa princiapl int main() { float x1.-. pendiente de una recta.m. } if(flag) cout<<"El operador escogido es “<<operador<<” y la respuesta es:"<<rpta<<endl. case '*':rpta=a*b. default: flag=0. cin>>a>>b.rpta. división o resto para finalmente mostrar la operación básica en cada caso */ #include<iostream> using namespace std. 26 /* Programa que calcula el muestra del rombo.Arombo. Felix Huari Evangelista . switch (operador) { case '+':rpta=a+b. ecuación de la recta y el carácter dado el codigo ASCII */ #include<iostream> #include<math.h> using namespace std.y2. 25 /*Escribir un programa que solicite al usuario el ingreso de dos números y luego el operador de suma.b.break.break.x2.break.y1.d. cin>>operador./):".*. resta.break.D. //Programa princiapl int main() { float a. cout<<"\nIngrese dos numeros:". } Ejm. else cout<<"El Operador ingresado es incorrecto". int flag=1.lado. Fundamentos de Programación Ing. multiplicación.3/8 Ejm. case '/':rpta=a/b.

2)). break. cout<<"Ingrese las coordenadas del segundo punto:". case 2: cout<<"Ingrese las coordenadas del primer punto:". cout<<"El Area del rombo es:"<<Arombo<<endl.Pendiente de una recta\n". cin>>x2>>y2. Felix Huari Evangelista . cout<<"Menu Principal\n".Ecuacion de la Recta\n". cin>>x1>>y1. cout<<"4. Arombo=D*d/2.”<<y1<<”) y (“<<x2<<”. cin>>x1>>y1.”<<y2<<”) es Y-“<< m<<”*X-”<<y1+mx1<<endl. break.”<<y1<<”) y (“<<x2<<”.4/8 unsigned int op.2)+pow((y2-y1). cout<<"1.2)-pow((d/2). case 4: Fundamentos de Programación Ing.Muestra el Carácter dado el Ascii\n". cout<<"5.cin>>lado.Fin\n". D=2*D.Area del Rombo\n". cout<<"2. /* Seleccionando la opcion correcta */ switch(op) { case 1:cout<<"Ingrese la longitud del lado:". cout<<"Ingrese las coordenadas del segundo punto opuesto:". case 3: cout<<"Ingrese las coordenadas del primer punto:". cin>>x2>>y2. cout<<"\nDigite su opcion (1-5)=>". cout<<"3. cout<<"La pendiente de la recta que pasa por (“<<x1<<”. cin>>x1>>y1. D=sqrt(pow(lado. m=(y2-y1)/(x2-x1). cout<<"Ingrese las coordenadas del segundo punto:". cin>>op. cout<<"La ecuacion de la recta que pasa por (“<<x1<<”. // el area viene dado por: area=D*d/2 d=sqrt(pow((x2-x1).n.”<<y2<<”) es:”<<m<<endl. m=(y2-y1)/(x2-x1).2)). cout<<"Ingrese las coordenadas del primer punto opuesto:". cout<<"-------------\n". cin>>x2>>y2. break.

cout<<"Ingrese un numero [1-1000]:").n2=0. n1=num%10.5/8 cout<<"\nMUESTRA EL CARACTER DADO EL CODIGO ASCII\n").?".break. cout<<num<<" corresponde al carácter "<<char(num)<<endl. case 2:cout<<"Dos\n". Felix Huari Evangelista . } } else { numero=num. case 7:cout<<"Siete\n". Fundamentos de Programación Ing. //Programa princiapl int main() { unsigned int num. cin>>num. cout<<"\nIngrese el codigo Ascii:". num=num/10.break. else if(num<10) { cout<<"Ingreso el “<<num<<” y en letras es ".numero.break. 27 /* Programa que suma la dígitos de un numero de 3 cifras o muestra el numero en letras si este es menor que 10 */ #include<iostream> using namespace std.break.break.break. case 3:cout<<"Tres\n". cin>>num.. break.n1=0. default: cout<<"La opcion elegida es incorrecta\n". case 5: cout<<"Fin de sesion\n".break. switch(num) { case 1:cout<<"Uno\n". if(num>1000) cout<<"No acepto numeros mayores que 1000. } } Ejm. case 4:cout<<"Cuatro\n". case 8:cout<<"Ocho\n".break. case 9:cout<<"Nueve\n". case 6:cout<<"Seis\n". case 5:cout<<"Cinco\n".

} } Fundamentos de Programación Ing.6/8 n2=num%10. Felix Huari Evangelista . cout<<"El numero ingresado es “<<numero <<” y la suma de sus dígitos es:"<<n1+n2+num<<endl. num=num/10.

10. 2. en base a este determinar cual de las fecha es mas reciente. 9. Escribir un programa que permite leer el lado de un rombo y las coordenadas de los dos vértices opuestos para luego calcular el área del rombo. Los trabajadores de la empresa Topy Top laboran 3 turnos rotativos. 2. Para ello debe ingresar como datos 2 puntos por cada recta. El trabajador que labora en el turno tarde tiene un incentivo extra de S/. 3.m. 3. Felix Huari Evangelista . Turno tarde un 2. mañana 7:00 am-3:00 p. 300 y 75 pies y el número de pies de alambre que sobra o falta para completar un rollo. Escribir un programa que acepte como ingreso dos fechas en formato dia. escribir un programa que permita hallar la distancia de este ultimo a la recta. 300 y 75 pies. La longitud total del alambre debe ser positivo. en cada caso emitir un mensaje adecuado. donde los 2 primeros pares corresponden al primer numero fraccionario y el segundo par al segundo numero. – 7.).. Elabore el programa que solicite al usuario la longitud total de alambre en pies que se requiere.5% mas que la tarifa normal.m. además indicar si dicho ángulo es obtuso o agudo. Dado 2 vértices de un triangulo equilátero. nocturno 11:00 p.m. Dado 4 números enteros. 6. Un distribuidor de material eléctrico vende alambres en rollos de 500. 8. 7. – 11:00 p. Si el denominador de alguna de las fracciones es 0. y envíe como resultado el número de rollos de alambre de 500.00. 4.m. en cambio el que labora en el ultimo turno el incentivo es de S/. emita un mensaje de que no forman un cuadrado. de no ser así. se desea determinar el sueldo semanal total que percibe un trabajador.5% mas que la tarifa normal. En cada caso emitir el mensaje adecuado. mientras que el turno nocturno un 4. 5. Se pide escribir un programa que muestra los 2 números y además la suma.20. De no ser así. mostrar el mensaje de “Error en entrada de datos”.00 a. Escribir un programa que permita leer 4 puntos correspondientes a un cuadrilátero para luego demostrar que forman un cuadrado en cuyo caso indicar cuanto vale el lado y el área correspondiente. Elabore un diagrama de flujo.00. Fundamentos de Programación Ing. Se tiene 2 puntos que pertenecen a una recta y un tercer punto que no pertenece a la recta. mes y año.7/8 PROBLEMAS PROPUESTOS 1. tarifa normal por hora trabajada (deben ser positivos) y el turno en que labora (1. escribir un programa que permita calcular la coordenada del tercer vértice. Escribir un programa que permita determinar si dos rectas son paralelas o perpendiculares sabiendo que se ingresa como datos las coordenadas de 2 puntos por cada recta.m. Escribir un programa que permite determinar el ángulo que forma 2 rectas. para ello se cuenta con los siguientes datos: numero de horas trabajadas. 75. tarde 3:00 p. A los trabajadores que laboran en los 2 últimos turnos tienen una tarifa especial por hora trabajada como sigue. Ejemplo (8/5 + 1 /6 = 53/30). emita un mensaje y termina el programa.

Se pide escribir un programa que permita calcular la tasa de comisión que debe corresponder de acuerdo a la siguiente tabla: Dscto(%) tasa comisión(%) 25-30 1% 20-25 2% 15-20 4. para luego escribir dicho numero en numeración romana.5% 10-15 6% 1-10 7. Escribir un programa que permita el ingreso del numero de mes para luego mostrar la estación a la que pertenece. Se tiene el precio de lista y precio de venta de un determinado producto. 15. Felix Huari Evangelista .5% 0 10% Fundamentos de Programación Ing. 12. Escribir un programa que permita el ingreso de un numero entero positivo a lo mas de 2 dígitos. para luego escribir la suma de los dígitos que conforma dicho numero. la fecha del día siguiente es 29/05/2001.8/8 11. Escribir un programa que permita el ingreso de un numero entero positivo mayor que 10 y menor que 1000. si es menor quiere decir que hemos hecho el descuento. en cuyo caso se adicionara 1% a la tasa de comisión calculada. 13. 16. para luego escribir la fecha del día siguiente. Elabore el programa para determinar el dígito mayor de un número entero positivo menor o igual que 1000. Escribir un programa que permita el ingreso de una fecha en el formato dd/mm/aaaa. 14. por ejemplo si fecha actual es 28/05/2001. Si es mayor quiere decir que hemos vendido por encima del precio de lista sugerido. donde este ultimo puede ser mayor que el primero o menor. Debe contemplar si el año es bisiesto o no. Suponga que cada tres meses completos hay cambio de estación.