Este documento contiene 25 problemas o ejercicios de programación en pseudocódigo con sus respectivas soluciones. Los ejercicios abarcan temas como operaciones matemáticas, condicionales, bucles, funciones y algoritmos para resolver problemas cotidianos utilizando fórmulas.
Este documento contiene 25 problemas o ejercicios de programación en pseudocódigo con sus respectivas soluciones. Los ejercicios abarcan temas como operaciones matemáticas, condicionales, bucles, funciones y algoritmos para resolver problemas cotidianos utilizando fórmulas.
Este documento contiene 25 problemas o ejercicios de programación en pseudocódigo con sus respectivas soluciones. Los ejercicios abarcan temas como operaciones matemáticas, condicionales, bucles, funciones y algoritmos para resolver problemas cotidianos utilizando fórmulas.
Este documento contiene 25 problemas o ejercicios de programación en pseudocódigo con sus respectivas soluciones. Los ejercicios abarcan temas como operaciones matemáticas, condicionales, bucles, funciones y algoritmos para resolver problemas cotidianos utilizando fórmulas.
Descargue como DOCX, PDF, TXT o lea en línea desde Scribd
Descargar como docx, pdf o txt
Está en la página 1de 19
Ejercicios propuestos
1) Hacer un seguimiento (prueba de escritorio) del siguiente grupo de instrucciones.
INICIO SUMA = 0; X = 20; SUMA = SUMA + X; Y = 40; X = X + Y ** 2; SUMA = SUMA + X / Y; EscribirEL VALOR DE LA SUMA ES:, SUMA; FIN_INICIO
2) Escriba un algoritmo que, dados dos valores A y B, encuentre: A B, A + B, A * B y A / B INICIO Escribir Ingrese valor de A y B; Leer A,B; Suma=A+B; Resta=A-B; Multiplicacion=A*B; Division=A/B; Escribir La suma de A y B es:,Suma; Escribir La resta de A y B es:,Resta; Escribir La multiplicacin de A y B es:,Multiplicacion; Escribir La divisin de A y B es:,Division; FIN 3) Elabore un algoritmo que lea un nmero y obtenga su cuadrado y su cubo. INICIO Escribir Ingrese un nmero. Leer num; cuadrado=num*num; cubo=num*num*num; Escribir El cuadrado es:,cuadrado; Escribir El cubo es:,cubo; FIN 4) Elabore un algoritmo que lea un nmero negativo e imprima el nmero y el positivo del mismo. INICIO Escrbir Ingrese un numero negativo; Leer num; positivo=num*(-1); Escribir Negativo:,num; Escribir Positivo;,positivo; FIN 5) Disee un algoritmo que entre la ordenada (Y) y la abscisa (X) de un punto de un plano cartesiano y, determine si pertenece o no a la recta Y = 3X + 5. INICIO Escribir Ingrese el valor de X y Y; Leer x,y; si y=3*x+5 Entonces Escribir El punto si pertenece a la recta; sino Escribir El punto no pertenece a la recta; finsi FIN 6) Una frutera ofrece las manzanas con descuento segn la siguiente tabla: No. de manzanas compradas % descuento 0 2 0% 3 5 10% 6 10 15% 11 en adelante 20% Determinar cunto pagar una persona que compre manzanas en esa frutera.
7) Un proveedor de computadores ofrece descuento del 10%, si cuesta $1 000 o ms. Adems, independientemente, ofrece el 5% de descuento si la marca es ABACO. Determinar cunto pagar, con IVA incluido, un cliente cualquiera por la compra de una computadora. INICIO Escribir Ingrese valor de la venta y la marca; Leer venta,marca; descuento1=0; si venta >= 1000 entonces descuento=(venta*10)/100; finsi marca=convertir_mayusculas(marca); descuento2=0; si marca = ABACO entonces descuento2=(venta*5)/100; finsi totalDescuento=descuento1+descuento2; iva=(venta*12)/100; total=venta-totalDescuento+iva; Escibir El total a pagar es:,total; FIN 8) Elaborar un algoritmo que encuentre el mayor valor entre un grupo de datos positivos. INICIO Escribir Ingresar valores positivos; Leer valores; mayor=0; mientras (hay numeros) si numero > mayor entonces mayor = numero; finsi finmientras Escribir El numero mayor es:, mayor; FIN 9) Hacer algoritmo que encuentre la suma de los valores mayor y menor entre un grupo un de datos positivos. INICIO Escribir Ingresar valores positivos; Leer valores; mayor=0; menor=99999; mientras (hay numeros) si numero > mayor entonces mayor = numero; finsi si menor > numero entonces menor = numero; finsi finmientras suma= mayor + menor; Escribir La suma es:, suma; FIN
10) Elaborar un algoritmo que encuentre el factorial de los nmeros comprendidos entre 1 y N. INICIO Escribir Ingrese valor de N; Leer n; factorial=1; si n < 0 entonces Escribir No tiene factorial; sino mientras n > 1 hacer factorial=factorial * n; n=n-1; finmientras finsi Escribir El factorial es:, factorial; FIN 11) Escribir un programa pseudocdigo que calcule e imprima en pantalla el cuadrado de 243 y la raz cuadrada de 256. INICIO cuadrado=243*243; razCuadrada=raiz(256); Escribir El cuadrado de 243 es: ,cuadrado; Escribir La raz cuadrada de 256 es: ,raizCuadrada; FIN 12) Escribir un programa en pseudocdigo que lea desde teclado dos nmeros e imprima su suma y resta. INICIO Escribir Ingrese valor de A y B; Leer A,B; Suma=A+B; Resta=A-B; Escribir La suma de A y B es:,Suma; Escribir La resta de A y B es:,Resta; FIN
13) Escribir un programa en pseudocdigo para determinar el rea y el volumen de un cilindro, cuyas dimensiones radio y altura se leen desde teclado. Considere las frmulas: V = * R * H y A = 2 * * R INICIO Escribir Ingrese valor de radio y altura; Leer radio,altura; area = 2 * 3.1416 * (radio * radio); volumen = 3.1416 * (radio * radio) * altura; Escribir El rea del cilindro es:,area; Escribir El volumen del cilindro es:,volumen; FIN
14) Escribir un programa en pseudocdigo para calcular el valor de la hipotenusa de un tringulo rectngulo aplicando el teorema de Pitgoras. Los valores de los catetos deben ingresarse desde el teclado. INICIO Escribir Ingrese valor del cateto opuesto; Leer opuesto; Escribir Ingrese valor del cateto adyacente; Leer adyacente; hipotenusa=raz((opuesto * opuesto)+(adyacente * adyacente)) Escribir La hipotenusa es:,hipotenusa; FIN
15) Escribir un programa en pseudocdigo que permita obtener la edad de una persona en meses, dada su edad aos y meses. INICIO Escribir Ingrese su edad en aos; Leer anos; Escribir Ingrese los meses cumplidos; Leer meses; totalMeses = (anos * 12) + meses; Escribir Su edad en meses es.,totalMeses; FIN 16) Escribir un programa en pseudocdigo que permita calcular el rea de unos rectngulos dados su largo y su ancho. INICIO Escribir Ingrese largo y ancho del rectangulo; Leer largo,ancho; area= ancho*largo; Escribir El rea es:,area; FIN 17) Escribir un programa en pseudocdigo que permite convertir una longitud dada en metros a pies (1 metro = 3.28 pies) INICIO Escribir Ingrese la cantidad en metros; Leer metros; total= metros * 3.28; Escribir La cantidad en pies es:,total; FIN
18) Escribir un programa en pseudocdigo que permita expresar en horas, minutos y segundos una cantidad de segundos ingresados por teclado INICIO Escribir Ingrese la cantidad en segundos; Leer segundos; hrs=segundos/(60*60); segundos = segundos mod (60 * 60); min=segundos/60; segundos= segundos mod 60; Escribir Horas: ,hrs; Escribir Minutos: ,min; Escribir Segundos:,segundos; FIN
19) Escribir un programa en pseudocdigo que permita obtener el valor en, pesos colombianos, libras esterlinas y marco alemanes, de una cantidad de dlares ingresadas por teclado. Alimente al programa las cotizaciones actuales. INICIO Escribir Ingrese cantidad en dolares; Leer dlares; pesos=dlares* 1779.8; libras=dlares* 0.64; marco=dlares* 1,33; Escribir Pesos:,pesos; Escribir Libras:,libras; Escribir Marco:,marco; FIN 20) Escribir un programa en pseudocdigo que calcula la masa del aire de un neumtico de automvil utilizando la frmula: M = (P * V) / (T + 460) * 0.37, donde: P es la presin es psi, V es el volumen en pies cbicos, T la temperatura en grados Fahrenheit y M es la masa del aire en libras. INICIO Escribir Ingrese la presin, volumen y temperatura; Leer p,v,t; masa=(p * v)/(t + 460) * 0.37; Escribir La masa en libras es:,masa; FIN
21) Escribir un programa en pseudocdigo que permita calcular el espacio que recorre una persona en un tiempo dado T a una velocidad constante V, aplicando la frmula: E = V * T, donde: V es el espacio recorrido por la persona en metros por segundo y T es el tiempo empleado en segundos. INICIO Escribir Ingrese el tiempo recorrido y la velocidad; Leer t,v; distancia=t * v; Escribir La distancia recorrida es:,distancia; FIN 22) Escribir un programa en pseudocdigo que lea el peso actual, las caloras quemadas por da, las caloras ingeridas por da y el peso deseado por una persona. Todo esto para calcular e imprimir el nmero de das que tardar la persona en alcanzar el peso deseado mediante la relacin: 3000 caloras corresponden a 1 libraperdida. INICIO Escribir Ingrese su peso actual, las caloras quemadas por un dia y el peso deseado; Leer pesoAct, quemadas, deseado; quemadas=quemadas/3000; das=0; mientras pesoAct <= deseado hacer pesoAct=pesoAct-quemadas; das=das+1; finmientras Escribir Los dias para llegar al peso deseado es:,dias; FIN 23) Qu visualizar y cuntas veces se ejecuta el siguiente bucle?
Se visuaiza un bucle mientras(while) donde se mostrar los valores del 1 al 5. Este se ejecutar 5 veces ya que la condicin indica que el valor de i debe ser menor a 6. 24) Escribir un programa en pseudocdigo que lea un caracter desde el teclado y deduzca si est situado antes o despus de la letra `m en orden alfabtico. INICIO Escribir Ingrese el caracter; Leer carcter; alfabeto=ABCDEFGHIJKLMNOPQRSTUVWXYZ; caracter=Convierte_mayuscula(caracter); posM=hallar_posicion(alfabeto,M); posC=hallar_posicion(alfabeto,caracter); si posC > posM entonces Escribir El carcter esta ubicado despues de la letra M; finsi
si posC < posM entonces Escribir El carcter esta ubicado antes de la letra M; finsi
sino Escribir El carcter ingresado es la letra M; finsino FIN 25) Escribir un programa en pseudocdigo que lea dos caracteres y deduzcan si estn en orden alfabtico. INICIO Escribir Ingrese caracteres; i 1; Mientras (i<6) do Inicio Escribir (i); ii + 1; Fin;
Leer car1,car2; alfabeto=ABCDEFGHIJKLMNOPQRSTUVWXYZ; car1=Convierte_mayuscula(car1); car2=Convierte_mayuscula(car2); pos1=hallar_posicion(alfabeto,car1); pos2=hallar_posicion(alfabeto,car2); si pos1 > pos2 entonces Escribir Estn ordenados; finsi
si pos1 < pos2 entonces Escribir Estn desordenados; finsi sino Escribir Los caracteres ingresados son iguales; finsino FIN
26) Escribir un programa en pseudocdigo que permita contar el nmero de letras `i que se encuentran en una frase que se ingresa caracter por caracter a travs del teclado terminado con un punto. INICIO Escribir Ingrese la frase; Leer frase; Escribir Ingrese la letra a contar; Leer letra; longitud=hallar_longitud(frase); i=1; contador=0; mientras i<=longitud hacer si letra=frase(i) entonces contador=contador+1; finsi finmientras Escribir La cantidad es.,contador; FIN
27) Escribir un programa en pseudocdigo para calcular independientemente la suma de los nmeros pares impares comprendidos entre 1 y 100. INICIO Par=2; Impar=1; mientras Par<100 hacer Par=Par+2; finmientras mientras Impar<101 hacer Impar=Impar+2; finmientras Escribir La suma de los pares es:,Par; Escribir La suma de los impares es:,Impar; FIN 28) Escribir un programa en pseudocdigo para generar los n primeros trminos de la serie de Fibonacci (1, 1, 2, 3, 5, 8, 13, etc). Considerar que la serie de Fibonacci se define de la siguiente manera: El primer elemento de la serie es una unidad (1) Los dems elementos se forman de la siguiente manera: 1 = 1 + 0 2 = 1 + 1 3 = 2 + 1 5 = 3 + 2 8 = 5 + 3 13 = 8 + 5 ........................... an = an-1 + an-2 INICIO inicio Escribir ,1; a=0; b=1; desde c= 1 hasta 99 { f=a+b; Escribir ,F; a=b; b=f } FIN 29) Escribir un programa en pseudocdigo que permita calcular los mltiplos de 4 comprendidos entre 4 y n. donde n es un valor lmite ingresado por teclado. INICIO Escribir Ingrese valor de n; Leer n; mult=4; i=1; mientras mult<=n hacer mult=mult*i; Escribir ,mult; i=i+1; finmientras FIN 30) Escribir un programa en pseudocdigo que acepte 10 nmeros enteros por teclado, visualice la suma de los nmeros pares ingresados, cuntos nmeros pares existen en la lista y cul es la medida aritmtica de los nmeros impares. INICIO Escribir "ingresa un numero"; Leer n; Suma=0;cont=0; mientras (n<11) hacer Leer n; si (n mod 2=0) enotnces suma=suma+n; cont=cont+1; finsi s=s+n; finmientras m=s/10; Escribir La suma de los nmeros pares es:,suma; Escribir La cantidad de nmeros pares es:,cont; Escribir La media aritmtica de los nmeros es:,m; FIN
31) Escribir un programa en pseudocdigo para imprimir las 30 primeras potencias de 4 (41, 42, 43, etc.) INICIO i=1; mientras i<=30 hacer pot=4^i; Escribir ,pot; finmientras FIN 32) Escribir un programa en pseudocdigo que permita leer slo los nmeros que representen a un mes. INICIO Escribir Ingrese un numero del mes; Leer num; si num>0 y num<=12 Escribir Correcto; finsi sino Escribir Incorrecto; finsino FIN 33) Escribir un programa en pseudocdigo que permita leer tres nmeros desde el teclado y reduzca si han sido ingresados en forma ascendente (de menor a mayor). INICIO Escribir Ingrese tres numeros; Leer num1,num2,num3; Si num1<num2 y num2<num3 entonces Escribir El orden es correcto; Finsi sino Escribir El orden no es correcto; finsino FIN 34) Escribir un programa en pseudocdigo para que lea dos nmeros enteros y obtenga su coeficiente y resto aplicando el mtodo de restas sucesivas. No utilice las funciones div ni mod. INICIO Escribir Ingrese los valores; Leer num1,num2; resto=num1; mientras resto>num2 resto=resto-num2 cont=cont+1; finmientras Escribir Coeficiente:,cont; Escribir Resto:,resto; FIN 35) Escribir un programa en pseudocdigo que permita obtener las tablas de multiplicar de los nmeros dgitos mediante bucles anidados.
INICIO r=0;
para i=1 hasta 10
para k=1 hasta 10. r:=i*k. Escribir i," por ",k," = ",r. k=k+1. i=i+1. FIN
36) Escribir un programa en pseudocdigo para convertir las calificaciones alfabticas A, B, C, D o E a las calificaciones numricas 4, 5, 6, 7, 8 respectivamente. INICIO Escribir Ingrese la calificacion; Leer nota; si nota=A entonces Escribir ,8; finsi si nota=B entonces Escribir ,7; finsi si nota=C entonces Escribir ,6; finsi si nota=D entonces Escribir ,5; finsi si nota=E entonces Escribir ,4; finsi sino Escribir Nota no valida; finsino FIN 37) Escribir un programa en pseudocdigo que permita leer por teclado un nmero comprendido entre 1 y 10 (inclusive) y que deduzca si es par o impar. INICIO Escribir Ingrese un numero del 1 al 10; Leer num; si num mod 2=0 entonces Escribir Es par; finsi sino Escribir Es impar; finsino FIN 38) Escribir un programa en pseudocdigo que permita calcular la hora que ser dentro de 10 segundos, a partir de una hora introducida por teclado en el siguiente formato: H: horas, M: minutos y S: segundos. INICIO Escribir Ingrese la hora en el formato hh mm ss; leer hh, mm, ssM si (hh < 24) y (mm<60) y (ss>60) entonces ss <-- ss + 10; si ss = 60 entonces ss <-- 0; mm <-- mm + 10; si mm = 60 entonces mm <-- 0; hh <-- hh + 10; si hh = 24 entonces hh <-- 0; finsi finsi finsi finsi Escribir La hora es:,hh, mm, ss; FIN
39) Escribir un programa en pseudocdigo que efecte la suma de dos nmeros ledos desde el teclado en funcin de la respuesta S/N al mensaje Desea sumar (S) o restar (R) . INICIO Escribir ingrese dos numeros; Leer num1,num2; Escribir Desea sumar (S) o restar (R); Leer resp; resp=convierte_mayusculas(resp); si resp=S entonces suma=num1+num2; Escribir La suma es:, suma; finsi si resp=R entonces resta=num1-num2; Escribir La resta es:, resta; finsi FIN 40) Escribir un programa en pseudocdigo para leer un dato numrico comprendido solo entre 1 y 5 (incluidos). Este algoritmo es til para seleccionar opciones de men. INICIO Escribir Ingrese un numero; Leer num; mientras num<1 y num>5 hacer limpiar_escritorio(); Escribir Ingrese un numero; Leer num; finmientras FIN 41) Escribir un programa en pseudocdigo que permita repetir continuamente la frase `Desea continuar < S/N > hasta que la entrada por teclado sea S o N. INICIO Escribir Desea continuar? (S/N); Leer resp; mientras resp<>S y resp<>N hacer Escribir Desea continuar? (S/N); Leer resp; finmientras FIN
42) Escribir un programa en pseudocdigo para calcular los cuadrados de una serie de nmeros ingresados por teclado y deducir cuntos nmeros se han ledo. INICIO Escribir Ingresar numero; Leer num; cuadrado=num*num; Escribir ,cuadrado; Cont=1; Escribir Desea ingresar otro? (S/N); Leer resp; mientras resp=S hacer Escribir Ingresar numero; Leer num; cuadrado=num*num; Escribir ,cuadrado; cont=cont+1; Escribir Desea ingresar otro? (S/N); Leer resp; finmientras Escribir La cantidad de nmeros ingresados es:,cont; FIN 43) Escribir un programa en pseudocdigo para leer las edades de los alumnos de una clase y calcular su media. Para terminar el usuario deber ingresar la edad 0 (cero). INICIO Escribir "ingresa un numero"; Leer n; c=0;s=0; mientras (n<>0) hacer Leer n; si (n<0) enotnces mientras (n<0) hacer Leer n; finmientras finsi sino c=c+1; s=s+n; finsino finmientras m=(s/c); Escribir "la media de esta serie es ",m; FIN 44) Escribir un programa en pseudocdigo para calcular la raz cuadrada de los nmeros ingresados por teclado. Si es positivo visualizar el resultado, caso contrario visualizar el mensaje `raz imaginaria y visualizar su valor. Para terminar el usuario debe ingresar 0 (cero).
INICIO Escribir "ingresa un numero"; Leer n; mientras (n<>0) hacer Leer n; si (n<0) enotnces mientras (n<0) hacer Leer n; Escribir Raiz imaginaria ,Raiz(n); finmientras finsi sino Escribir Resultado:,Raiz(n); finsino finmientras FIN