Fundamentos de Programación · Programación

Entrada, proceso y salida

Estructura un programa como un flujo entrada-proceso-salida, lee datos del usuario o de archivos y depura resultados inesperados revisando cada etapa.

Entrada, proceso y salida

Ilustracion de programacion: diagrama de flujo con decisionales y bloques de proceso.
Bases de la programacion: algoritmos, control de flujo y estructuras de datos.

Mapa conceptual

El esqueleto de cualquier programa Separa mentalmente todo programa en tres cajas: ENTRADA (de dónde vienen los datos), PROCESO (qué cálculo se hace) y SALIDA (qué se muestra o guarda). Cuando algo sale mal, no «todo está roto»: una de las tres cajas miente.

En Python, la entrada puede ser el teclado (input), un archivo, una base de datos o una API; el proceso son las variables y operaciones; la salida es print, un archivo escrito o una figura. La disciplina de pensar en tres etapas hace el código legible y depurable.

Cada etapa tiene su pregunta. Localizar la etapa culpable reduce el bug a una fracción del problema.
EtapaFuentes/destinos típicasPregunta de depuración
Entradainput(), archivo CSV, BD, API¿Llegan los datos correctos y del tipo correcto?
Procesocálculos, bucles, funciones¿La fórmula y la lógica transforman bien lo que entró?
Salidaprint(), archivo, gráfico¿Lo que se muestra es lo que el proceso calculó?

input siempre devuelve cadena

El error de novato más persistente: dato = input(edad: ) guarda una cadena, aunque el usuario escriba «20». Para operar con números hay que convertir: edad = int(input(edad: )). Si el usuario escribe «veinte», int falla con ValueError: otra razón para validar.

Aislar la etapa culpable Regla de oro del debugging: imprime las variables intermedias. «print is your friend» antes de que exista un depurador. Ver el valor real de suma justo antes de dividir revela si el problema es de entrada, de proceso o de salida.

Un programa pide dos números con input, los suma y muestra el resultado, pero con «2» y «3» imprime «23». ¿En qué etapa está el problema?

Escribir str(...) sobre un resultado antes de print es casi siempre obligatorio porque print no sabe mostrar nada.

Asigna cada línea de código a la etapa del flujo a la que pertenece.

Entrada
Proceso
Salida

Errores que se repiten

Ejemplo depurado paso a paso

  1. Entrada: a = int(input(primero: )), b = int(input(segundo: )).
  2. Proceso: s = a + b.
  3. Salida: print(La suma es, s).
  4. Prueba con 2 y 3: si saliera «23», sospecharíamos de la entrada; aquí da 5 porque convertimos con int() en el paso 1.
  5. Si el usuario escribe letras: int(x) lanza ValueError → hay que proteger con try/except más adelante.

En ciencia de datos el mismo patrón se llama pipeline: leer un dataset (entrada), transformarlo y ajustar un modelo (proceso), escribir predicciones o métricas (salida). Cuando una métrica sale absurda, la disciplina de tres etapas te dice por dónde empezar a mirar.

El flujo en seis claves

entrada
input, open, query, API
proceso
cálculos y lógica
salida
print, write, fig
input()
devuelve str, ¡ojo!
int(input())
convertir a número
print(x)
sí sabe mostrar cualquier tipo

Python · entrada y salida
Lección oficial sobre leer del teclado, formatear cadenas y escribir archivos.

Escribe (en pseudocódigo o Python) un programa de tres etapas que pida la base y la altura de un triángulo y muestre su área. Indica en cuál etapa pondrías un print de verificación si el resultado te parece raro, y por qué.

Reflexiona: ¿como se relaciona este tema con los demas temas del curso? ¿Que ejemplo practico podrias dar?

Repasa los conceptos clave de este tema antes de continuar al siguiente. Asegurate de entender las definiciones principales y los ejemplos presentados.

Python Tutorial
Tutorial oficial de Python 3 para principiantes.