Anda di halaman 1dari 8

TAREA DE ALGORITMOS PARA ENTREGAR EL SABADO 7 DE AGOSTO ELABORAR DIAGRAMA DE FLUJO Y PSEUDOCODIGO

1) Desarrolle un algoritmo que lea de un registro el nombre, la edad, el sexo, el estado civil de cualquier persona e imprima el nombre de la persona si corresponde a un hombre soltero, mayor de 30 aos o a una mujer viuda menor de 50 aos.2. Elabore un algoritmo que imprima el salario total de un obrero, conociendo el nmero de horas que trabaj en la semana, cunto se le paga por cada hora y que se le hace una bonificacin semanal en el salario de $25 por cada producto terminado con cero errores.3. Elabore un algoritmo que tome los valores A, B, C y calcule e imprima el resultado de la expresin 3A+5B-7C. Leer 3 edades, e imprimirlas junto con el promedio. Elabore un algoritmo que lea 10 nmeros e imprima solamente los positivos. Elabore un algoritmo que lea un nmero determinado de nmeros y obtenga la sumatoria de los nmeros positivos. Elabore un algoritmo que lea un nmero indeterminado de nmeros y obtenga el valor absoluto de la sumatoria de los nmeros negativos. Se tiene un grupo de N personas, para cada una de las cuales se ha elaborado una tarjeta de registro indicando el sexo y los puntos obtenidos en un examen. Se desea conocer con base en los promedios de los puntos obtenidos, cual sexo tuvo mejor desempeo. En una galera se pregunta los visitantes de los colores luz primarios ( rojo, verde, azul) les gusta mas. Elabore un algoritmo que evale en porcentaje el gusto del pblico. Se tiene un grupo indeterminado de parejas de datos (clave y valor) que representan consignaciones o retiros en cierto fondo de ahorros, inicialmente vaco. La clave 0 indica consignacin, y la clave 1 indica retiro. Elabore un algoritmo que calcule el saldo existente al presentarse la clave de fin, que ser la clave 3. En un determinado peaje se desea saber cuntos carros particulares y cuntos buses pasaron en un da, lo mismo que el promedio de personas que viajan en carro particular y el promedio de personas que viajan en bus. Se debe tener en cuenta que por cada vehculo que pase, se debe indagar por el tipo de vehculo que es y el nmero de pasajeros que transporta. Nota: si es un carro particular se identifica con 1, si es bus se identifica con 2, otro tipo de transporte con

2) 3) 4) 5) 6)

7) 8)

9)

3. No se sabe con certeza cuntos carros pasarn en un da, pero al final del da se deben imprimir los datos buscados.
10)

Producir un reporte de existencia de artculos sealando aquellos que estn por debajo de la cantidad mnima permitida (punto de pedido) con un mensaje que diga PEDIR. Cada artculo tiene un nico registro con los siguientes datos> Referencia, Descripcin, Punto de Pedido, Saldo actual.

11) Elaborar un algoritmo que a partir del valor de una factura calcule el valor del IVA, el valor total de un nmero conocido de facturas y el valor pagado a la DIAN por todas las facturas.De cada factura se conoce el valor (se debe calcular el IVA) y por cada una de ellas se debe imprimir: Valor, Valor del IVA, valor total. 12) Determinar el precio de un pasaje de ida y vuelta por avin, conociendo la distancia a recorrer, el nmero de das de estancia y sabiendo que si la distancia a recorrer es superior a 1.000 kms. y el nmero de das de estancia es superior a 7, la aerolnea hace un descuento del 30%. El precio por kilmetro es de $1300. Dar el resultado en miles de pesos. 13) Un almacn de escritorios hace los siguientes descuentos: Si el cliente compra menos de 5 unidades se le da un descuento del 10% sobre la compra; si el nmero de unidades es de cinco o mas, pero menos de 10, se le otorga un 20%, y si son 10 o mas se le da un 40%. Elaborar un algoritmo que determine cuanto debe pagar cierto cliente que compr N escritorios, sabiendo que el valor de cada escritorio es de $65.000. 14) En un almacn de descuentos se efecta una promocin en la cual se hace un descuento sobre el valor de la compra total segn el color de la bolita que el cliente saque al pagar en la caja. Si la bolita es blanca, no se aplica descuento, si es verde el descuento es del 10%, si es amarilla 25%, si es azul 50% y si es roja un 100%. Disear un algoritmo para determinar la cantidd final que un cliente deber pagar por su compra, y el valor en pesos que corresponde al descuento. Se sabe que slo hay bolitas de los colores mencionados.

EJERCICIOS RESUELTOS SOBRE ALGORITMOS


1. A un trabajador le pagan segun sus horas y una tarifa de pago por horas. si la cantidad de horas trabajadas es mayor a 40 horas. la tarifa se incrementa en un 50% para las horas extras. calcular el salario del trabajador dadas las horas trabajadas y la tarifa. variables: horas_trabajadas,tarifa,horas_extras,salario,tarifa_e inicio leer: horas_trabajadas,tarifa si: horas_trabajadas <= 40 entonces salario <-- horas_trabajadas * tarifa si_no tarifa_extra <-- tarifa + 0.50 * tarifa horas_extras <-- horas_trabajadas - 40 salario <-- horas_extras * tarifa_extra + 40 * tarifa fin_si imprimir: salario. fin 2. A un trabajador le descuentan de su sueldo el 10% si su sueldo es menor o igual a 1000. por encima de 1000 y hasta 2000 el 5% del adicional, y por encima de 2000 el 3% del adicional. calcular el descuento y sueldo neto que recibe el trabajador dado su sueldo. variables: sueldo,sueldo_neto,descuento inicio leer: sueldo si: sueldo <= 1000 entonces descuento <-- sueldo * 0.1 si_no si: sueldo <= 2000 entonces descuento <-- (sueldo - 1000) * 0.05 + 1000 * 0.1 si_no descuento <-- (sueldo - 2000) * 0.03 + 1000 * 0.1 fin_si imprimir: descuento. fin 3. Dado un monto calcular el descuento considerando que por encima de 100 el descuento es el 10% y por debajo de 100 el descuento es el 2%. variables: monto,descuento inicio leer: monto si: monto > 100 entonces descuento <-- monto * 10 / 100 si_no descuento <-- monto * 2 / 100 fin_si imprimir: monto, descuento fin

4. Dado un tiempo en segundos, calcular los segundos restantes que le correspondan para convertirse exactamente en minutos. variables: tiempo_seg,minutos,segundos inicio leer: tiempo_seg si minutos <-- tiempo_seg div 60 entonces segundos <-- tiempo_seg mod 60 fin_si imprimir: minutos,segundos. fin 5. Dado un tiempo en minutos, calcular los dias, horas y minutos que le corresponden. variables: tiempo,dias,horas,minutos inicio leer: tiempo si: dias <-- tiempo div 1440 x <-- tiempo mod 1440 horas <-- x div 60 minutos <-- x mod 60 imprimir: dias,minutos,horas fin_si fin 6. Calcular mediante un algoritmo repetitivo la suma de los nmeros naturales. Inicio Leer : N X<--1 S<--0 Mientras x<=N hacer S<--s+1 X<--x+1 Fin _ mientras Imprimir: s Fin 7. Modificar el ejercicio 1 para obtener la suma de los salarios de todos los trabajadores. Inicio Leer: N X<--1 S<--0 Mientras x<=N hacer Leer:h, t S<--h*t Imprimir s S<--s+s X<--x+1 Fin _ mientras Imprimir: s Fin N primeros

8. Dada las horas trabajadas de una persona la tarifa de pago. Calcular su salario e imprimirla. Inicio leer: h, t S<--h * t Imprimir: s fin (Para dos personas) inicio leer: h, t S<--h * t Imprimir s Leer: h, t S<--h * t Imprimir: s Fin 9. Dado N notas de un estudiante calcular: a) b) c) d) Cuantas notas tiene desaprobados. Cuantos aprobados. El promedio de notas. El promedio de notas aprobadas y desaprobadas.

Inicio Leer: N X<--1 Cd<--0 NA <-0 acum_desap <-0 acum_ap <- 0 acum <- 0 Mientras x<=N hacer Leer: not Si: not < 10.5 entonces CD<--cd+1 acum_desap <- acum_desap + not Sino NA <- NA + 1 acum_ap <- acum_ap + not fin _ si acum <- acum + not x<--x+1 Fin _ mientras prom_ap <- acum_ap /NA prom_desap <- acum_desap/CD prom <- acum / N Imprimir: prom, prom_ap, prom_desap, NA, CD Fin

10. Dado un numero determinar la suma de sus dgitos. Inicio Leer: n S<--0 Mientras n<>0 hacer R<--n mod 10 S<--s + r N<--n div 10 Fin _ mientras Imprimir: s Fin 11.Se trata de escribir el algoritmo que permita emitir la factura correspondiente a una compra de un articulo determinado, del que se adquieren una o varias unidades. El IVA es del 15% y si el precio bruto ( precio venta mas IVA) es mayor de 50.00 pesetas se debe realizar un descuento del 5%. Variables: descuento(d) Inicio precio, numeros de articulos(Nart), precio venta(Pv),

Leer precio, Nart Pv= Precio * Nart IVA= Pv * 0.15 Pb= Pv + IVA Si Pb >= 50 entonces d= (Pb * 5)/100 Sino d= 0 Finsi Pl= Pb - d Escribir Pv, IVA, Pb,d, Pl Fin

12. Realizar un algoritmo que permita pedir 50 nmeros naturales y determine e imprima cuantos son pares, impares, positivos y negativos. variables:par(p), impares(im), positivos(pos), negativos(n) Inicio p= 2 in= 0 pos.= 0 n= 0 Para x= 1 hasta 50 Leer n Si n mod 2= 0 entonces p= p + 1 Sino in= in + 1 Finsi Si n > 0 entonces Pos= pos + 1 Sino n= n + 1 Finsi Fin_para Escribir p, in, pos, n Fin 13. Desarrollar un algoritmo para calcular e imprimir el factorial de un nmero. variables: factorial(f). numero(n) Inicio f= 1 Para x= 1 hasta n f = f * x Fin_para Escribir f Fin 14. Calcular la media de 100 nmeros e imprimir su resultado. variables: suma(s), media Inicio s= 0 x= 1 Mientras x<= 100 hacer Leer n s = s + n x = x + 1 Finmientras media = s /100 Escribir media Fin

15. Calcular y visualizar la suma y el producto de los nmeros pares comprendidos entre 20 y 400 ambos inclusive. variables: suma(s), producto(p) Inicio s = 0 p = 1 x = 20 Mientras x<= 400 hacer s = s +1 p = p *x x = x +1 Finmientras Escribir s, p Fin 16.-Hacer un programa que al ingresar un nmero de Amstrong nos escriba si es o no es un nmero de amstrong, y si no es que indique que vuelva a intentar. Variables nmero, nmero original, digito INICIO LEER NMERO Numer original Suma 0 Mientras NUMERO < > 0 hacer dijito <- digito mod 10 Suma <- suma + dijito ^ 3 Numero <- numero mod 10 Si suma = Nmero _ original Entonces Escribir "es un numero de amstrong" Sino Escribir "no es un numero de amstrong, intente otra vez" Finsi Fin 17.-Hacer un programa que registre el n de crditos de un alumno. *El nmero mximo de crdito es 25 *Imprimir nmero de crdito y total de crdito. Variables crdito, numero_de_crdito Inicio total_de_crdito <- 0 Leer crdito Si total_de_crdito + crdito < = 25 entonces Total_de_crdito <total_de_crdito + crdito Numero_de_crdito <- nmero_de_cedito + 1 Fin si Imprimir Numero_de_crdito, crdito Fin

18.-Hacer un programa para escribir la primera vocal leda del teclado. *Se supone que se leen, uno a uno, carcter desde el teclado Variables vocal Carcter J Inicio sw = 1 Mientras sw = 1 hacer Leer J si (J= "a") o (J = "e") o (J = "i") o (J = "o") o (J ="u") Escribir "LA PRIMERA VOCAL INGRESADA FUE",J sw <- 0 fin_si Fin_mientras Fin 19.-Hacer un programa que no determine un numero tiene o no parte fraccionaria. Variables parte_fracciomaria Real n Inicio Escribir "ingresa numero" Leer n Si n = trunc(n) entonces numero Escribir "numero no tiene parte fraccionaria" Sino Escribir" numero con parte fraccionaria" fin si Fin o

// trunc es una funcion // que elimina los decimales

de

un