Si ya aprendiste lógica de programación con PSeInt, pasar a Python no significa empezar de cero. Los conceptos siguen siendo los mismos: variables, decisiones, ciclos, listas, funciones y algoritmos. Lo que cambia es la sintaxis y algunas convenciones del lenguaje.
En esta guía vamos a tomar 10 algoritmos conocidos y traducirlos paso a paso de PSeInt a Python. La idea es que puedas reconocer rápidamente qué parte del pseudocódigo corresponde a cada instrucción real.
La lógica no cambia: cambia la forma de escribirla.
En PSeInt nos concentrábamos en describir el algoritmo. En Python escribimos código real que será interpretado y ejecutado por la computadora. Por eso aparecen reglas concretas como la indentación, los índices desde 0 y la conversión de datos ingresados con input().
Equivalencias rápidas entre PSeInt y Python
| PSeInt | Python |
|---|---|
Escribir |
print() |
Leer |
input() |
Si |
if |
Sino |
else |
Mientras |
while |
Para |
for |
MOD |
% |
SubProceso |
def |
| vector desde posición 1 | lista desde posición 0 |
1. Entrada y salida de datos
PSeInt
Algoritmo Saludo
Definir nombre Como Caracter
Escribir "Ingrese su nombre:"
Leer nombre
Escribir "Hola ", nombre
FinAlgoritmo
Python
nombre = input("Ingrese su nombre: ") print("Hola", nombre)
En Python no necesitamos declarar previamente la variable. input() recibe el dato y lo guarda como texto.
2. Número par o impar
PSeInt
Algoritmo ParImpar
Definir numero Como Entero
Escribir "Ingrese un numero:"
Leer numero
Si numero MOD 2 = 0 Entonces
Escribir "Es par"
Sino
Escribir "Es impar"
FinSi
FinAlgoritmo
Python
numero = int(input("Ingrese un numero: ")) if numero % 2 == 0: print("Es par") else: print("Es impar")
MOD se reemplaza por %. También convertimos el resultado de input() con int() porque necesitamos trabajar con un entero.
3. Mayor de dos números
PSeInt
Algoritmo MayorDeDos
Definir a, b Como Real
Escribir "Ingrese dos numeros:"
Leer a
Leer b
Si a > b Entonces
Escribir "El mayor es ", a
Sino
Si b > a Entonces
Escribir "El mayor es ", b
Sino
Escribir "Son iguales"
FinSi
FinSi
FinAlgoritmo
Python
a = float(input("Ingrese el primer numero: ")) b = float(input("Ingrese el segundo numero: ")) if a > b: print("El mayor es", a) elif b > a: print("El mayor es", b) else: print("Son iguales")
Python incorpora elif, que permite expresar una segunda condición sin anidar otro if.
4. Promedio de notas
PSeInt
Algoritmo PromedioNotas
Definir nota1, nota2, nota3, promedio Como Real
Leer nota1
Leer nota2
Leer nota3
promedio <- (nota1 + nota2 + nota3) / 3
Escribir "Promedio: ", promedio
FinAlgoritmo
Python
nota1 = float(input("Nota 1: ")) nota2 = float(input("Nota 2: ")) nota3 = float(input("Nota 3: ")) promedio = (nota1 + nota2 + nota3) / 3 print("Promedio:", promedio)
La asignación que en PSeInt escribíamos con <- en Python se realiza con =.
5. Factorial de un número
PSeInt
Algoritmo Factorial
Definir numero, i, resultado Como Entero
Escribir "Ingrese un numero:"
Leer numero
resultado <- 1
Para i <- 1 Hasta numero Hacer
resultado <- resultado * i
FinPara
Escribir "Factorial: ", resultado
FinAlgoritmo
Python
numero = int(input("Ingrese un numero: ")) resultado = 1 for i in range(1, numero + 1): resultado = resultado * i print("Factorial:", resultado)
En Python, el límite final de range() no se incluye. Por eso usamos numero + 1 para recorrer desde 1 hasta el número ingresado.
6. Determinar si un número es primo
PSeInt
Algoritmo NumeroPrimo
Definir numero, divisor Como Entero
Definir esPrimo Como Logico
Escribir "Ingrese un numero:"
Leer numero
esPrimo <- Verdadero
divisor <- 2
Si numero < 2 Entonces
esPrimo <- Falso
FinSi
Mientras divisor * divisor <= numero Y esPrimo Hacer
Si numero MOD divisor = 0 Entonces
esPrimo <- Falso
Sino
divisor <- divisor + 1
FinSi
FinMientras
Si esPrimo Entonces
Escribir "Es primo"
Sino
Escribir "No es primo"
FinSi
FinAlgoritmo
Python
numero = int(input("Ingrese un numero: ")) es_primo = numero >= 2 divisor = 2 while divisor * divisor <= numero and es_primo: if numero % divisor == 0: es_primo = False else: divisor += 1 if es_primo: print("Es primo") else: print("No es primo")
Los valores lógicos se escriben True y False. El operador lógico Y pasa a ser and.
7. Suma de los dígitos de un número
PSeInt
Algoritmo SumaDigitos
Definir numero, suma, digito Como Entero
Escribir "Ingrese un numero positivo:"
Leer numero
suma <- 0
Mientras numero > 0 Hacer
digito <- numero MOD 10
suma <- suma + digito
numero <- Trunc(numero / 10)
FinMientras
Escribir "Suma de digitos: ", suma
FinAlgoritmo
Python
numero = int(input("Ingrese un numero positivo: ")) suma = 0 while numero > 0: digito = numero % 10 suma += digito numero //= 10 print("Suma de digitos:", suma)
En Python, // realiza división entera. Esto nos permite eliminar el último dígito sin utilizar Trunc().
8. Recorrer un vector: de vector a lista
PSeInt
Algoritmo RecorrerVector
Definir numeros, i Como Entero
Dimension numeros[5]
numeros[1] <- 10
numeros[2] <- 20
numeros[3] <- 30
numeros[4] <- 40
numeros[5] <- 50
Para i <- 1 Hasta 5 Hacer
Escribir numeros[i]
FinPara
FinAlgoritmo
Python
numeros = [10, 20, 30, 40, 50] for numero in numeros: print(numero)
Python permite recorrer directamente los elementos de una lista sin necesidad de manejar el índice.
Si necesitáramos acceder por posición, debemos recordar que los índices comienzan en 0:
print(numeros[0]) # 10 print(numeros[4]) # 50
9. Búsqueda secuencial
PSeInt
Algoritmo BusquedaSecuencial
Definir numeros, i, buscado, posicion Como Entero
Definir encontrado Como Logico
Dimension numeros[5]
numeros[1] <- 10
numeros[2] <- 20
numeros[3] <- 30
numeros[4] <- 40
numeros[5] <- 50
Escribir "Ingrese el valor a buscar:"
Leer buscado
encontrado <- Falso
posicion <- 1
Mientras posicion <= 5 Y NO encontrado Hacer
Si numeros[posicion] = buscado Entonces
encontrado <- Verdadero
Sino
posicion <- posicion + 1
FinSi
FinMientras
Si encontrado Entonces
Escribir "Encontrado en la posicion ", posicion
Sino
Escribir "No encontrado"
FinSi
FinAlgoritmo
Python
numeros = [10, 20, 30, 40, 50] buscado = int(input("Ingrese el valor a buscar: ")) encontrado = False posicion = 0 while posicion < len(numeros) and not encontrado: if numeros[posicion] == buscado: encontrado = True else: posicion += 1 if encontrado: print("Encontrado en la posicion", posicion) else: print("No encontrado")
Aquí el índice 0 sí es una posición válida. Si buscamos 10, Python lo encuentra en la posición 0.
Más adelante veremos que Python ofrece herramientas más directas para ciertas búsquedas, pero implementar el algoritmo manualmente sigue siendo fundamental para entender cómo funciona.
10. Función que devuelve un resultado
PSeInt
SubProceso resultado <- Sumar(a, b)
resultado <- a + b
FinSubProceso
Algoritmo EjemploFuncion
Definir total Como Real
total <- Sumar(10, 5)
Escribir total
FinAlgoritmo
Python
def sumar(a, b): return a + b total = sumar(10, 5) print(total)
En Python utilizamos def para definir una función y return para devolver el resultado.
Un detalle fundamental: la indentación
En PSeInt las estructuras terminan explícitamente con palabras como FinSi, FinMientras o FinPara. Python no utiliza esas palabras.
En cambio, los bloques se identifican mediante indentación:
if edad >= 18: print("Mayor de edad") print("Puede continuar") print("Fin del programa")
Las dos primeras instrucciones pertenecen al if. La última queda fuera porque ya no está indentada.
Otro cambio importante: input() devuelve texto
Este código:
numero = input("Ingrese un numero: ")
guarda el valor como texto. Si necesitamos realizar operaciones matemáticas debemos convertirlo:
numero = int(input("Ingrese un numero: "))
o:
precio = float(input("Ingrese un precio: "))
¿Qué aprendimos al traducir estos algoritmos?
El cambio de PSeInt a Python es mucho menos brusco cuando ya entendemos la lógica. Los algoritmos siguen teniendo:
- datos de entrada;
- variables;
- operaciones;
- condiciones;
- repeticiones;
- estructuras para almacenar datos;
- funciones para separar responsabilidades;
- resultados de salida.
Python simplemente nos obliga a expresar esas ideas utilizando la sintaxis de un lenguaje real.
Próximo paso
Ahora que ya vimos cómo trasladar algoritmos conocidos, el próximo paso será resolver ejercicios directamente en Python, sin depender de una versión previa en PSeInt.
Si necesitás repasar la base algorítmica, podés recorrer nuestro centro de contenidos de PSeInt.
Seguí aprendiendo Python
Podés volver a la introducción a Python o continuar resolviendo problemas directamente en el lenguaje:
20 ejercicios resueltos de Python para principiantes →
Ver la ruta completa de Python →
¿Te sirvió esta guía? ☕
Si este contenido te ayudó a dar el salto de PSeInt a Python, podés apoyar a Club Programador. Cada aporte ayuda a mantener el contenido gratuito y a seguir publicando nuevas guías.
🇦🇷 Apoyar desde Argentina
☕ Invitame un café con Mercado Pago
🌎 Apoyar desde otro país
Descubre más desde Club Programador
Suscríbete y recibe las últimas entradas en tu correo electrónico.
3 opiniones en “De PSeInt a Python: 10 algoritmos traducidos paso a paso”