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 años o a una mujer viuda menor de 50 años.2. Elabore un algoritmo que imprima el salario salario total de un obrero, conociendo el número de horas que trabajó en la semana, cuánto se le paga por cada hora y que se le hace una bonificación semanal en el salario de $25 por cada producto terminado con cero errores.3. Elabore un algoritmo que tome los los valores A, B, C y calcule e imprima imprima el resultado de la expresión 3A+5B-7C.
2)
Leer 3 edades, e imprimirlas junto con el promedio.
3)
Elabore un algoritmo que lea 10 números e imprima solamente los positivos.
4)
Elabore un algoritmo que lea un número determinado de números y obtenga la sumatoria de los números positivos.
5)
Elabore un algoritmo que lea un número indeterminado de números y obtenga el valor absoluto de la sumatoria de los números negativos.
6)
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 obtenidos en un examen. Se desea conocer con base en los promedios de los puntos puntos obtenidos, cual sexo tuvo mejor desempeño.
7)
En una galería se pregunta los visitantes de los colores luz primarios ( rojo, verde, azul ) les gusta mas. Elabore un algoritmo que evalúe en porcentaje el gusto del público.
8)
Se tiene un grupo indeterminado de parejas de datos (clave y valor ) que representan consignaciones o retiros en cierto fondo de ahorros, inicialmente vacío. vacío. La clave 0 indica consignación, 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 .
9) En un determinado peaje se desea saber cuántos carros particulares y cuántos buses pasaron en un día, lo mismo que el promedio de personas que viajan viajan en carro particular y el promedio de personas que viajan en bus. Se debe tener en cuenta que por cada vehículo que pase, se debe indagar por el tipo de vehículo que es y el número 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 3. No se sabe con certeza cuántos carros pasarán en un día, pero al final del día se deben imprimir imprimir los datos buscados. 10)
Producir un reporte de existencia de artículos señalando aquellos que están por debajo de la cantidad mínima permitida (punto de pedido) con un mensaje que diga “ PEDIR “. Cada artículo tiene un único registro c on los siguientes datos> Referencia, Descripción, 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 número 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 avión, conociendo la distancia a recorrer, el número de días de estancia y sabiendo que si la distancia a recorrer es superior a 1.000 kms. y el número de días de estancia es superior a 7, la aerolínea hace un descuento del 30%. El precio por kilómetro kilómetro es de $1300. Dar el resultado en miles de pesos. 13) Un almacén de escritorios hace los siguientes siguientes descuentos: Si el cliente compra menos de 5 unidades se le da un descuento del 10% sobre la compra; si el número 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 determine cuanto debe pagar cierto cliente que compró N escritorios, sabiendo que el valor de cada escritorio es de $65.000. 14) En un almacén de descuentos se efectúa una promoción en la cual se hace un descuento sobre el valor de la compra total según 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%. Diseñar 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 sólo hay hay bolitas de los 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 números naturales.
N primeros
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
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 dígitos. 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
Fin
precio,
numeros
de
articulos(Nart),
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
precio
venta(Pv),
12. Realizar un algoritmo que permita pedir 50 números 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 número. 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 números 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 números 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 número de Amstrong nos escriba si es o no es un número de amstrong, y si no es que indique que vuelva a intentar. Variables número, número original, digito INICIO LEER NÚMERO Numeró original Suma 0 Mientras NUMERO < > 0 hacer dijito <- digito mod 10 Suma <- suma + dijito ^ 3 Numero <- numero mod 10 Si suma = Número _ 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 créditos de un alumno. *El número máximo de crédito es 25 *Imprimir número de crédito y total de crédito. Variables crédito, numero_de_crédito Inicio total_de_crédito <- 0 Leer crédito Si total_de_crédito + crédito < = 25 entonces Total_de_crédito
18.-Hacer un programa para escribir la primera vocal leída del teclado. *Se supone que se leen, uno a uno, carácter desde el teclado Variables vocal Carácter 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
// trunc es una funcion // que elimina los decimales
Escribir "numero no tiene parte fraccionaria" Sino Escribir" numero con parte fraccionaria" fin si Fin o
de
un