Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

🤖 Roomba Simulator

Proyecto final para Code in Place (Stanford University).

Simulación de una aspiradora Roomba en consola, desarrollada en Python puro.

¿Qué hace?

El programa tiene dos fases:

Fase 1 – Distribución de suciedad Recorre el tablero y coloca suciedad aleatoriamente en las celdas, con un 30% de probabilidad por celda.

Fase 2 – Limpieza en serpentina La Roomba recorre todo el tablero en patrón serpentina (izquierda→derecha en filas pares, derecha→izquierda en filas impares), limpiando cada celda sucia que encuentra.

Al terminar muestra un resumen con el número de celdas limpiadas y la eficiencia.

Cómo ejecutarlo

Requisitos: Python 3.8 o superior (sin librerías externas).

python roomba.py

Controles

  • Al finalizar la Fase 1 pulsa ENTER para iniciar la limpieza.
  • La animación corre automáticamente.

Leyenda

Símbolo Significado
R Roomba (posición actual)
Celda sucia
· Celda ya limpiada
Celda limpia

Estructura del código

roomba.py
├── crear_tablero()          → genera el tablero vacío
├── distribuir_suciedad()    → Fase 1: coloca suciedad aleatoria
├── limpiar_celda()          → limpia una celda individual
├── recorrer_serpentina()    → Fase 2: movimiento en serpentina
├── mostrar_tablero()        → renderiza el tablero en consola
├── mostrar_resumen()        → estadísticas finales
└── main()                   → punto de entrada

Autor

Alejandro Béjar Campón — Code in Place, Stanford University

About

A Python-based Roomba simulation using Karel the Robot. The program randomly distributes beepers across the grid and then cleans them using a serpentine (boustrophedon) pattern, mimicking how a real robotic vacuum navigates a room.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages