Practicar con ejercicios concretos es una de las mejores formas de aprender pseudocódigo. En esta guía reunimos 20 ejercicios resueltos en PSeInt centrados en condicionales y ciclos, desde problemas básicos hasta otros un poco más completos.
Todos los algoritmos están escritos con sintaxis estándar de PSeInt y pueden copiarse directamente para probarlos y modificarlos.
1. Determinar si un número es par o impar
Algoritmo ParOImpar Definir numero Como Entero Escribir "Ingrese un número:" Leer numero Si numero MOD 2 = 0 Entonces Escribir "El número es par" Sino Escribir "El número es impar" FinSiFinAlgoritmo
Si el resto de dividir por 2 es 0, el número es par. Para ver la explicación paso a paso, casos de prueba y variantes, consultá Número par o impar en PSeInt.
2. Determinar si un número es positivo, negativo o cero
Algoritmo PositivoNegativoOCero Definir numero Como Real Escribir "Ingrese un número:" Leer numero Si numero > 0 Entonces Escribir "El número es positivo" Sino Si numero < 0 Entonces Escribir "El número es negativo" Sino Escribir "El número es cero" FinSi FinSiFinAlgoritmo
3. Encontrar el mayor de tres números
Algoritmo MayorDeTres Definir a, b, c, mayor Como Real Escribir "Ingrese tres números:" Leer a Leer b Leer c mayor <- a Si b > mayor Entonces mayor <- b FinSi Si c > mayor Entonces mayor <- c FinSi Escribir "El mayor es: ", mayorFinAlgoritmo
Inicializar mayor con el primer valor evita usar números arbitrarios como valor inicial.
4. Sumar los números del 1 hasta N
Algoritmo SumaDeUnoAN Definir n, i, suma Como Entero Escribir "Ingrese un número entero positivo:" Leer n suma <- 0 Para i <- 1 Hasta n Hacer suma <- suma + i FinPara Escribir "La suma es: ", sumaFinAlgoritmo
5. Mostrar la tabla de multiplicar de un número
Algoritmo TablaDeMultiplicar Definir numero, i Como Entero Escribir "Ingrese un número:" Leer numero Para i <- 1 Hasta 10 Hacer Escribir numero, " x ", i, " = ", numero * i FinParaFinAlgoritmo
6. Cuenta regresiva desde N hasta 1
Algoritmo CuentaRegresiva Definir n, i Como Entero Escribir "Ingrese un número entero positivo:" Leer n Para i <- n Hasta 1 Con Paso -1 Hacer Escribir i FinParaFinAlgoritmo
7. Sumar los números pares entre 1 y N
Algoritmo SumaDePares Definir n, i, suma Como Entero Escribir "Ingrese un número entero positivo:" Leer n suma <- 0 Para i <- 2 Hasta n Con Paso 2 Hacer suma <- suma + i FinPara Escribir "La suma de los pares es: ", sumaFinAlgoritmo
8. Calcular el factorial de un número
Algoritmo CalcularFactorial Definir n, i, fact Como Entero Escribir "Ingrese un número entero mayor o igual a 0:" Leer n Si n < 0 Entonces Escribir "El factorial no está definido para números negativos" Sino fact <- 1 Si n > 0 Entonces Para i <- 1 Hasta n Hacer fact <- fact * i FinPara FinSi Escribir "El factorial es: ", fact FinSiFinAlgoritmo
Para n = 0 el ciclo no realiza iteraciones y el resultado permanece en 1, que es justamente 0! = 1.
9. Contar cuántos dígitos tiene un número entero
Algoritmo CantidadDeDigitos Definir numero, cantidad Como Entero Escribir "Ingrese un número entero:" Leer numero Si numero < 0 Entonces numero <- -numero FinSi Si numero = 0 Entonces cantidad <- 1 Sino cantidad <- 0 Mientras numero > 0 Hacer numero <- Trunc(numero / 10) cantidad <- cantidad + 1 FinMientras FinSi Escribir "Cantidad de dígitos: ", cantidadFinAlgoritmo
10. Sumar los dígitos de un número
Algoritmo SumaDeDigitos Definir numero, digito, suma Como Entero Escribir "Ingrese un número entero:" Leer numero Si numero < 0 Entonces numero <- -numero FinSi suma <- 0 Mientras numero > 0 Hacer digito <- numero MOD 10 suma <- suma + digito numero <- Trunc(numero / 10) FinMientras Escribir "La suma de los dígitos es: ", sumaFinAlgoritmo
La idea es tomar el último dígito con MOD 10, acumularlo y eliminarlo del número. Para ver el desarrollo completo y más ejemplos, consultá Suma de dígitos de un número en PSeInt.
11. Invertir un número entero
Algoritmo InvertirNumero Definir numero, digito, invertido Como Entero Escribir "Ingrese un número entero positivo:" Leer numero invertido <- 0 Mientras numero > 0 Hacer digito <- numero MOD 10 invertido <- invertido * 10 + digito numero <- Trunc(numero / 10) FinMientras Escribir "Número invertido: ", invertidoFinAlgoritmo
Por ejemplo, si se ingresa 1234, el resultado será 4321.
12. Determinar si un número es capicúa
Algoritmo NumeroCapicua Definir numero, original, digito, invertido Como Entero Escribir "Ingrese un número entero no negativo:" Leer numero Si numero < 0 Entonces Escribir "Ingrese un número no negativo" Sino original <- numero invertido <- 0 Mientras numero > 0 Hacer digito <- numero MOD 10 invertido <- invertido * 10 + digito numero <- Trunc(numero / 10) FinMientras Si original = invertido Entonces Escribir "El número es capicúa" Sino Escribir "El número no es capicúa" FinSi FinSiFinAlgoritmo
13. Determinar si un número es primo
Algoritmo NumeroPrimo Definir numero, divisor, cantidadDivisores Como Entero Escribir "Ingrese un número entero:" Leer numero Si numero < 2 Entonces Escribir "El número no es primo" Sino cantidadDivisores <- 0 Para divisor <- 1 Hasta numero Hacer Si numero MOD divisor = 0 Entonces cantidadDivisores <- cantidadDivisores + 1 FinSi FinPara Si cantidadDivisores = 2 Entonces Escribir "El número es primo" Sino Escribir "El número no es primo" FinSi FinSiFinAlgoritmo
Un número primo tiene exactamente dos divisores positivos: 1 y él mismo. Para ver una explicación paso a paso y pruebas con distintos valores, consultá Número primo en PSeInt.
14. Contar los divisores de un número
Algoritmo ContarDivisores Definir numero, i, cantidad Como Entero Escribir "Ingrese un número entero positivo:" Leer numero Si numero <= 0 Entonces Escribir "Debe ingresar un número positivo" Sino cantidad <- 0 Para i <- 1 Hasta numero Hacer Si numero MOD i = 0 Entonces cantidad <- cantidad + 1 FinSi FinPara Escribir "Cantidad de divisores: ", cantidad FinSiFinAlgoritmo
15. Calcular el promedio de N notas
Algoritmo PromedioDeNotas Definir n, i Como Entero Definir nota, suma, promedio Como Real Escribir "¿Cuántas notas desea ingresar?" Leer n Si n <= 0 Entonces Escribir "La cantidad debe ser mayor que cero" Sino suma <- 0 Para i <- 1 Hasta n Hacer Escribir "Ingrese la nota ", i, ":" Leer nota suma <- suma + nota FinPara promedio <- suma / n Escribir "Promedio: ", promedio FinSiFinAlgoritmo
16. Encontrar el mayor y el menor de N números
Algoritmo MayorYMenor Definir n, i Como Entero Definir numero, mayor, menor Como Real Escribir "¿Cuántos números desea ingresar?" Leer n Si n <= 0 Entonces Escribir "La cantidad debe ser mayor que cero" Sino Escribir "Ingrese el número 1:" Leer numero mayor <- numero menor <- numero Para i <- 2 Hasta n Hacer Escribir "Ingrese el número ", i, ":" Leer numero Si numero > mayor Entonces mayor <- numero FinSi Si numero < menor Entonces menor <- numero FinSi FinPara Escribir "Mayor: ", mayor Escribir "Menor: ", menor FinSiFinAlgoritmo
El primer valor ingresado se utiliza para inicializar tanto el mayor como el menor. Así el algoritmo funciona correctamente incluso si todos los valores son negativos.
17. Contar positivos, negativos y ceros
Algoritmo ContarTiposDeNumeros Definir n, i, positivos, negativos, ceros Como Entero Definir numero Como Real Escribir "¿Cuántos números desea ingresar?" Leer n positivos <- 0 negativos <- 0 ceros <- 0 Para i <- 1 Hasta n Hacer Escribir "Ingrese un número:" Leer numero Si numero > 0 Entonces positivos <- positivos + 1 Sino Si numero < 0 Entonces negativos <- negativos + 1 Sino ceros <- ceros + 1 FinSi FinSi FinPara Escribir "Positivos: ", positivos Escribir "Negativos: ", negativos Escribir "Ceros: ", cerosFinAlgoritmo
18. Validar una contraseña con un máximo de 3 intentos
Algoritmo ValidarContrasena Definir clave Como Cadena Definir intentos Como Entero Definir acceso Como Logico intentos <- 0 acceso <- Falso Mientras intentos < 3 Y acceso = Falso Hacer Escribir "Ingrese la contraseña:" Leer clave intentos <- intentos + 1 Si clave = "programar" Entonces acceso <- Verdadero Sino Escribir "Contraseña incorrecta" FinSi FinMientras Si acceso Entonces Escribir "Acceso permitido" Sino Escribir "Se agotaron los intentos" FinSiFinAlgoritmo
19. Menú de operaciones con Segun y Repetir
Algoritmo MenuDeOperaciones Definir opcion Como Entero Definir a, b Como Real Repetir Escribir "1. Sumar" Escribir "2. Restar" Escribir "3. Salir" Escribir "Seleccione una opción:" Leer opcion Segun opcion Hacer 1: Escribir "Ingrese dos números:" Leer a Leer b Escribir "Resultado: ", a + b 2: Escribir "Ingrese dos números:" Leer a Leer b Escribir "Resultado: ", a - b 3: Escribir "Fin del programa" De Otro Modo: Escribir "Opción inválida" FinSegun Hasta Que opcion = 3FinAlgoritmo
20. Mostrar los primeros N términos de Fibonacci
Algoritmo Fibonacci Definir n, i, a, b, siguiente Como Entero Escribir "¿Cuántos términos desea mostrar?" Leer n Si n <= 0 Entonces Escribir "La cantidad debe ser mayor que cero" Sino a <- 0 b <- 1 Para i <- 1 Hasta n Hacer Escribir a siguiente <- a + b a <- b b <- siguiente FinPara FinSiFinAlgoritmo
La secuencia generada comienza con 0, 1, 1, 2, 3, 5.... En cada iteración se muestra el término actual y luego se actualizan los dos valores necesarios para calcular el siguiente.
Cómo aprovechar estos ejercicios
No conviene limitarse a copiar y ejecutar los algoritmos. Una buena práctica consiste en probarlos con distintos valores y después modificarlos. Por ejemplo, podés cambiar límites, agregar validaciones o pedir que un mismo ejercicio se repita hasta que el usuario elija salir.
Si recién estás empezando, también te recomendamos nuestra colección de ejemplos básicos resueltos en PSeInt. Para practicar estructuras de datos, podés continuar con Arreglos en PSeInt.