24
PROBLEMAS RESUELTOS DE ALGORITMOS 1.- Mostrar su nombre, sexo edad y estado civil, que son ingresados po ALGORITMO datopersonal INICIO CAAC!" nombre#$%&, sexo, "c "ntero edad 1.-'"" nombre, sexo, edad, "c (( "c ) estado civil *.-MO+!A nombre, sexo, edad , "c IN *.- Ingresar por teclado el nombre y la edad de cualquier persona e im nombre como la edad A' OI!MO edad INICIO CAAC!" nombre#$%&. "ntero edad 1.-'"" nombre, edad *.-MO+!A nombre, edad IN $.- Ingresar por teclado el nombre y la edad de cualquier persona e im persona es mayor de edad, el nombre de la persona. A' OI!MO adulto INICIO CAAC!" nombre "ntero edad 1.- '"" nombre, edad *.- +I edad /) 10 "N!ONC"+

Ejercicios de Algoritmos3

Embed Size (px)

Citation preview

PROBLEMAS RESUELTOS DE ALGORITMOS1.- Mostrar su nombre, sexo edad y estado civil, que son ingresados por tecladoALGORITMO datopersonalINICIOCARACTERnombre[30], sexo, EcEnteroedad1.-LEERnombre, sexo, edad, Ec// Ec = estado civil2.-MOSTRAR nombre, sexo, edad , EcFIN2.- Ingresar por teclado el nombre y la edad de cualquier persona e imprima tanto el nombre como la edadALGORITMO edadINICIOCARACTERnombre[30].Enteroedad1.-LEER nombre, edad2.-MOSTRAR nombre, edadFIN3.- Ingresar por teclado el nombre y la edad de cualquier persona e imprima, solo si la persona es mayor de edad, el nombre de la persona.ALGORITMO adultoINICIOCARACTERnombreEnteroedad1.- LEER nombre, edad2.- SI (edad >= 18)ENTONCESa)MOSTRAR nombreFINSIFIN4.- .- Ingresar por teclado el nombre y la edad de cualquier persona e imprima solo si la persona es mayor de edad, el nombre de la persona, de lo contrario, imprima un mensaje que diga : no puede votar.ALGORITMO votarINICIOCadenanombreEnteroedad1.-LEERnombre , edad2.-SI ( edad >= 18) ENTONCESa)MOSTRAR nombreSINOa)MOSTRAR no puede votarFINSIFIN5.- Ingresar por teclado el nombre, la edad y el sexo de cualquier persona e imprima, solo si la persona es de sexo masculino y mayor de edad, el nombre de la persona. NOTA: suponga que en el campo denominado sexo el numero 1 es masculino o el numero 2 es femeninoALGORITMO sexINICIOCadenanombreEnterosexo , edad1.-LEER nombre, sexo,edad2.-SI (sexo = 1) y (edad>= 18)ENTONCESa)MOSTRAR nombre.FINSIFIN6.- Ingresar por teclado el nombre, la edad, el sexo (1 o 2) y el estado civil de cualquier persona e imprima solo si la persona es un hombre soltero mayor de edad, el nombre de la persona.NOTA:en el campo de estado civil se graba el numero 1 en vez de soltero, el numero 2 en vez de casado o el numero 3 en vez de otro.ALGORITMO hombsoltINICIOCadenanombreEnteroedad , sexo, ec// ec =estado civil.1.-LEER nombre, edad, sexo, ec.2.-SI (sexo = 1) y (ec = 1) y (edad >= 18)ENTONCESa)MOSTRAR nombreFINSIFIN7.-Lea de un registro el nombre, la edad, el sexo y el estado civil de cualquier persona e imprima, solo si la persona es hombre o mujer menor de edad o es hombre casado de cualquier edad, el nombre de la persona y un mensaje que diga usted no se manda. En los dems casos imprima el nombre de la persona solamente.ALGORITMO mensajeINICIOCARCTERnombre[30], s, ec// s = sexo,e = edadEntero, e// ec = estado civil1.-LEER nombre, e, s, ec2.-SI (s = M) o ((s = F) y (e < 18)) o ((s = M) y( ec = C))ENTONCES a)MOSTRAR nombre, usted no se mandaSINOa)MOSTRAR nombre.FINSIFIN8.-Ingrese un numero e imprima el numero y el valor absoluto del mismo.ALGORITMO valorabsolutoINICIOReal , x, VA//{x es el numero}1.-LEER x2.-VAabs (x)3.- MOSTRAR VA// VA es el valor absolutoFIN9.-Ingrese un nmero y calcule e imprima su raz cuadrada. Si el numero es negativo imprima el nmero y un mensaje que diga tiene raz imaginariaALGORITMO RCINICIOReal ,num, RC1.-LEER num2.- SI (num >= 0)ENTONCESa.RCsqrt (num)b.MOSTRAR RCSINOa.MOSTRAR num tiene raz imaginariaFINSIFIN10.-Ingrese dos nmeros desde el teclado e imprima solo los positivosALGORITMO posINICIORealA, B1.-LEER A, B2.-SI (A>0)ENTONCESMOSTRARAFINSI3.-SI (B>0)ENTONCESMOSTRAR BFINSIFIN11.-Ingrese dos nmeros desde el teclado e imprima ambos nmeros slo si son positivosALGORITMO numposINICIOReal , A, B1.-LEER A, B2.-SI (A>0) y (B>0) ENTONCES a)MOSTRARA, BFINSIFIN12.-Ingrese dos nmeros desde el teclado e imprima ambos nmeros si por lo menos uno de ellos es positivoALGORITMO numINICIOReal A ,B1.-LEER A, B2.-SI (A>0) o (B>0) ENTONCESa) MOSTRAR A, BFINSIFIN13.-Ingrese dos nmeros desde el teclado e imprima ambos nmeros solo si son de diferente signo y distintos de ceroALGORITMO signosopINICIOReal A, B1.-LEER A, B2.-SI ( AB ) y ( B0 ) ENTONCESa)SI (A0) o (A>0) y (B48) ENTONCESa)ExtrHt-48b)SextrSb+Sb*Trc)SN(48*Sb) + (Extr*Sextr)SINOa)SNSb*HtFINSI3.- MOSTRARnombre, SNFIN22.-Obtenga los 100 primeros nmeros naturales.ALGORITMOciennumINICIOEntero,i1.- PARAi1 HASTAi100HACERa)MOSTRARiFINPARA23.- Obtener los nmeros pares comprendidos entre 1 y 1000ALGORITMO numparINICIOEnteroi1.- PARAi2HASTAi1000INC = 2HACERa) MOSTRARiFINPARAFIN24.- Leer de un registro un nmero entero positivo y obtener los mltiplos de 3 comprendidos entre 1 y el nmero ledo.ALGORITMO mult3INICIOEnteroi,N1.- LEER N2.- PARAi1HASTAiNHACERa) SI ( iMOD3 = 0 )ENTONCES1.MOSTRAR iFINSIFINPARAFIN25.- Lea los veinte primeros registros de un archivo, cada uno de los cuales contienen un nombre. Imprimir los nombres.ALGORITMO nombreINICIOEntero, iCARACTER nombre[30]1.- PARAi1HASTAi20HACERa)LEERnombreb)MOSTRAR nombreFINPARAFIN26.- Leer varios registros cada uno de ellos, conteniendo un nombre. El nmero de estos registros se encuentra grabado en un registro que precede a los anteriores. Imprimir cada uno de los hombres ledos.ALGORITMO nombresINICIOCARACTER nombreEnteroi, N1.- LEER NReg2.- PARA i1HASTA iNRegHACER a) LEER nombreb) MOSTRAR nombreFINPARAFIN27.- Leer un conjunto de registros cada uno de ellos conteniendo el cdigo y el nombre de cada uno de los estudiantes de la universidad. El ltimo registro del conjunto (registro centinela) contiene el cdigo 9999999 y es utilizado slo para chequear el final de los registros. Imprima cada uno de los cdigos ledos. Lgicamente la informacin del registro centinela no se imprime porque no pertenece a ningn estudiante.ALGORITMO estudianteINICIOEntero cod// cod es el cdigo.CARACTER nombre[30]1.- LEER cod, nombre2.- MIENTRAS (cod9999999) HACERa)MOSTRAR cod , nombreb)LEER cod, nombre FINMIENTRASFIN28.-Imprimir cuatro columnas. En la primera columna, los enteros del 1 al 50 . En las otras columnas, la segunda, la tercera y la cuarta potencia de los enteros de la primera columnaALGORITMOpotenciaINICIOEntero , i, pot2, pot3, pot41.- PARA i1HASTAi50HACERa)pot2sqr ( i)b)pot3pot2 * ic)pot4pot2 * pot2d) MOSTRAR i , pot2, pot3, pot4FINPARAFIN29.- Calcule la suma de los100 primeros nmeros naturalesALGORITMO sumaINICIOEntero suma, i1.- suma02.- PARAi1 HASTA i100HACERa) sumasuma + iFINPARA3.-MOSTRAR sumaFIN30.- Obtener la suma de los nmeros pares comprendidos entre 1 y 100ALGORITMO sumINICIOEntero i , suma1.- suma02.-PARA i2HASTAi100INC = 2HACERa) sumasuma + iFINPARA3.-MOSTRAR sumaFIN31.- Encuentre la calificacin promedio para un gran nmero, aunque desconocido, de calificaciones de exmenes. Estas vienen grabadas en registros. La calificacin ms alta posible es 10.0ALGORITMO calificacinINICIOReal calificacin, Promedio, Totcal// Totcal suma de las calificaciones,Entero, n// n es el nmero de calificaciones1.- Totcal02.- n03.- LEER calificacin4.- MIENTRAS (calificacion>=0 y calificacin B)ENTONCESa. MOSTRAR A es el mayor SINOa. MOSTRARB es el mayorFINSIFINSIFINPARAFIN35.- Leer una serie de grupos de tres nmeros y obtener el nmero mayor y el nmero menor de cada terna. Escriba un mensaje si por lo menos dos de cada tres nmeros son iguales.ALGORITMO ternasmayormenorINICIOReal A, B, CEntero, cant1.-MOSTRAR "ingrese la cantidad de ternas"2.-LEER cant3.-PARA i1 HASTAicantHACERa) LEER A, B, Cb)SI (A=B) o (B=C) o (A=C)ENTONCES1) MOSTRAR"por lo menos 2 de los 3 nmeros son ="SINO1) MENA2) SI (B MAY) ENTONCESa)MAYCFINSI8) MOSTRAR MAY "es el mayor"FINSIFINPARAFIN36.-Identifique y obtenga el nmero medio de un conjunto de tres nmeros nicos. EL nmero medio es aquelque no es el menor ni el mayor.ALGORITMO numeromedioINICIORealA, B, C.1.-MOSTRAR "ingrese tres nmeros distintos"2.-LEER A, B, C3.-SI ( A>B) ENTONCESa) SI (A>C) ENTONCES1)SI (B>C) ENTONCESa)MEDBSINOa) MEDCFINSISINO1)MEDAFINSISINOa) SI (B>C)ENTONCES1)SI (A>C)ENTONCESa)MEDASINOa)MEDCFINSISINO 1)MEDBFINSIFINSI4.-MOSTRAR MED "es el nmero medio"FIN37.- El Dane est interesado en saber el nmero de personas mayores de 18 aos, tanto hombres como mujeres en la ciudad de Medelln . Calcule e imprima el resultado de esta investigacin. Se deben leer registros que contiene cada uno el sexo y el nmero de aos.ALGORITMO daneINICIOEnteroedad, h, m, sexo1.-h02.-m03.-LEER edad , sexo4.-MIENTRAS (edad999)a) SI (edad >= 18)y(sexo = 1) ENTONCES1)hh + 1SINO 1) SI (edad > = 18) y (sexo = 2) ENTONCESa)mm + 1FINSIFINSIb) LEER edad, sexoFINMIENTRAS5.- MOSTRAR h, mFIN38.-Una tienda de libros y gneros diversos al menudeo ofrecen un descuento de cortesa del 10% para profesores. Muestre como la computadora puede calcular e imprimir el 10% de 1.00, 1.10, 1.20, etc hasta $25.00.ALGORITMO menudeoINICIOReal , desc//desc es el descuentoEntero, i1.- i1.002.- MIENTRAS (i < = 25.00) HACERa)desc0.10 * ib)MOSTRAR descc)ii + 0.10FINMIENTRASFIN39.-Un vendedor desea calcular su comisin total sobre la venta de varios artculos. Al vendedor le corresponde el5% de su comisin sobre artculos cuyo precio es menor de $100 y el 7.5 %de comisin sobre aquellos artculos cuyoprecio es de $100 o ms. Suponga que el vendedor hizoNventasALGORITMO comisinINICIOConstantesTC1 = 0,05TC2 = 0.075EnteroN , i.Realcomision ,tcom, venta1.-men02.-may03.-MOSTRAR " ingrese el nmero deventasque hizo "4.- LEER N5.- i16.-MIENTRAS (i = 0)ENTONCES1) X1( - B + sqrt(Disc) ) / (2*A)2)X2( - B - sqrt(Disc) ) / (2*A)3) MOSTRARx1, x2SINOMOSTRAR Tiene raices imaginarias FINSIFINSIFIN42.-Se tienen registro con los datos de los estudiantes de una universidad, as: cdigo del estudiante, nombre del estudiante. Valor crdito del estudiante, nmero de crditos tomados, valor del recargo en la matrcula. Se requiere leer los registros e imprimir un listado con la siguiente informacin por estudiante: cdigo, nombre del estudiante, valor crdito, nmero de crditos, valor del recargo, valor total pagado por estudiante. Tambin se debe calcular e imprimir al final del listado el total pagado por todos los estudiantes y el promedio por estudiante. Use codigo de centinela = 9999ALGORITMO pagoINICIOEntero, cdigo, n,ct// n, nmero de estudiantes, ct crditos tomadosReal, vc, rec, totpag,p// vc valor crdito, ,rec valor de recargo, totpag total pagadoCARCTERnombre[30]1.- n02.- totpag03.- LEER cdigo, nombre, vc, ct, rec4.- MIENTRAS ( cod9999) HACERa) PE( vc* ct) + recb) nn + 1c) totpagtotpag + PEd) MOSTRAR cod, nombre, vc, ct, rec, PEe) LEER cod, nombre, vc, ct, recFINMIENTRAS5.-Ptotpag / n6.-MOSTRARp,es el promedioFIN43.-Se tiene un conjunto de registros de los empleados de una compaa, cada registro contiene los siguientes datos: nmero del empleado, nombre del empleado, salario bsico por hora, horas trabajadas en el mes, deducciones, Se requiere leer los registros e imprimir un listado con la siguiente informacin por empleado : nmero del empleado , nombre del empleado, salario bsico por hora, horas trabajadas, deducciones, salario mensual. Tambin se debe calcular e imprimir al final del listado, eltotal de salarios pagados a todos los empleados y el promedio salarial por empleado.ALGORITMO compaaINICIOEntero, num, i// num, nmero del empleado, nov, nombre, sh salario por hora,// ht, horas trabajadas,d, deducciones i, nmero de empleados, tot,// Totalpagado, SM, salario mensual, P, promedio salarial//,Real, sh, ht, d, tot sm , pCARCTERnomb [30]1.- i02.- tot03.- LEER num, nomb, sh, ht, d4.- MIENTRAS ( num9999) HACERa)ii + 1b)sm(sh * ht) dc)tottot + smd)MOSTRAR num, nomb, sh, ht, d, sme)LEER num, nomb, sh, ht, dFINMIENTRAS5.- MOSTRAR tot6.-itot/ i7.- MOSTRAR P es el promedio salarial por empleadoFIN44.-Calcular e imprimir los salarios que se adeudan a trabajadores, basados en tasa a 1.5 veces la tasa regular, cuando Las horas trabajadas excedan de 40 por semanaALGORITMO salariosINICIOReal, ht, d, ext ,td// ht, horas trabajadas, d deuda, sh salario bsico por hora, extr,// horas extras, TDtotal de la deuda1.-LEER ht, sh2.- MIENTRAS ( ht0 ) HACERa)SI ( ht > 40) ENTONCES1)Extrht 402)D1.5 * extr * sh3)MOSTRARD4)TDTD + DFINSIb)LEER ht. ShFINMIENTRAS3.MOSTRARTDFIN45.- Dado que un peso de maana tiene menor valor que un peso de hoy (fenmeno econmico que llamamos inflacin) las empresas cuando calculan los futuros ingresos transformados a pesos de hoy superan el monto de la inversin hecha. La frmula general para el clculo del valor actual es :VA =C /(1 + i)Ndonde: Ces la cantidad del ingreso ies la tasa de inflacinNson los aos en consideracinUna empresa tiene informacin sobre la tasa de inflacin, la inversin y los ingresos calculados para diez aos seguidos. Con sta desea saber si al cabo de dicho tiempo ha recuperado la inversin, hablando en pesos del da en que se hace la mismaALGORITMO inflacinINICIOEntero, NReal, VA,. C, inv, i, den1.-LEER i , inv , C, N2.- denexp( N * ln (1+i))3.- VAC / den4.- SI ( VA > inv ) ENTONCESa)MOSTRAR recupera inversinSINOa)MOSTRAR no recupera la inversinFINSI5.- MOSTRAR VAFIN