Cómo hacer, verificar y enviar los ejercicios de CS50x | Guía completa

Guía completa para completar los ejercicios de CS50x de Harvard: entorno cs50.dev, check50, style50 y submit50 explicados paso a paso en español.

Si estás tomando el curso CS50x de Harvard y tienes dudas sobre cómo funciona el flujo completo de los ejercicios — dónde hacerlos, qué necesitas, cómo verificarlos y cómo enviarlos — esta guía es para ti. Vamos paso a paso.


¿Qué es CS50x y cómo están estructurados los ejercicios?

CS50x es el curso gratuito de Introducción a las Ciencias de la Computación de la Universidad de Harvard, disponible en cs50.harvard.edu/x. Cada semana del curso incluye:

  • Lectures (clases): Videos del profesor David Malan explicando los conceptos.
  • Sections: Clases de repaso con asistentes de enseñanza.
  • Shorts: Videos cortos sobre temas específicos.
  • Problem Sets (psets): Los ejercicios de programación principales que debes completar y enviar.
  • Labs: Ejercicios más guiados que también debes entregar.

Al final del curso, también debes completar un Proyecto Final para obtener el certificado.


¿Qué necesitas antes de empezar?

1. Cuenta en edX o en cs50.harvard.edu

Para acceder al curso y poder enviar tus ejercicios, debes registrarte en cs50.edx.org o directamente en el sitio de CS50. El curso es completamente gratuito; solo pagas si quieres el certificado verificado.

2. Cuenta de GitHub

GitHub es indispensable para CS50x. El sistema de envío (submit50) usa GitHub para almacenar y registrar tus entregas. Crea tu cuenta gratuita en github.com si aún no tienes una.

3. Acceso al entorno de desarrollo (VS Code para CS50)

No necesitas instalar nada en tu computadora. CS50 tiene su propio entorno en la nube basado en Visual Studio Code, disponible en:

👉 https://cs50.dev

Este entorno corre en GitHub Codespaces, lo que significa que todo funciona desde tu navegador. Al ingresar con tu cuenta de GitHub, tendrás un terminal Linux, VS Code y todas las herramientas de CS50 preinstaladas.


¿Dónde se hacen los ejercicios?

Todos los Problem Sets y Labs se realizan dentro del entorno cs50.dev. El flujo es el siguiente:

  1. Ve a cs50.dev e inicia sesión con GitHub.
  2. Se abrirá un entorno de VS Code en tu navegador con un terminal integrado.
  3. Lee las instrucciones del ejercicio en el sitio del curso (por ejemplo: cs50.harvard.edu/x/2026/psets/1/).
  4. En el terminal del codespace, crea una carpeta para tu ejercicio y escribe tu código ahí.

También puedes usar VS Code instalado localmente en tu computadora con la extensión de GitHub Codespaces, o incluso trabajar en tu propio entorno Linux/macOS si instalas las herramientas de CS50 manualmente, aunque esto es más avanzado.


¿Cómo se verifica un ejercicio? → check50

check50 es la herramienta oficial de CS50 para verificar automáticamente si tu código pasa los casos de prueba. Para usarla, desde el terminal de cs50.dev escribe:

check50 cs50/problems/2026/x/NOMBRE_DEL_EJERCICIO

Por ejemplo, para el ejercicio Hello de la semana 1:

check50 cs50/problems/2026/x/hello

El comando se conecta a los servidores de CS50 y ejecuta una serie de pruebas sobre tu código. Verás una salida con íconos de ✅ o ❌ para cada caso de prueba. Si todos están en verde, tu ejercicio está listo para enviar.

Verificar el estilo con style50

Además de la corrección lógica, CS50 también evalúa el estilo de tu código. Puedes verificarlo con:

style50 nombre_del_archivo.c

Esta herramienta te muestra sugerencias de formato como indentación, espaciado y organización. Un buen estilo refleja buenas prácticas de programación.


¿Cómo se envía un ejercicio? → submit50

Una vez que tu código pasa el check50, el envío se hace con submit50. Desde el terminal, estando dentro de la carpeta del ejercicio, escribe:

submit50 cs50/problems/2026/x/NOMBRE_DEL_EJERCICIO

Por ejemplo:

submit50 cs50/problems/2026/x/hello

Lo que hace submit50 por detrás es:

  1. Autenticarte con tu cuenta de GitHub (la primera vez te pedirá autorización).
  2. Crear o actualizar un repositorio privado llamado me50 en tu perfil de GitHub.
  3. Subir tu código al repositorio con el slug del ejercicio como rama o carpeta.
  4. Registrar la entrega en el sistema de CS50 con fecha y hora.

⚠️ Importante: Puedes enviar un ejercicio varias veces. CS50 toma en cuenta el último envío antes de la fecha límite (si aplica). El curso CS50x no tiene fechas límite estrictas para la mayoría de los psets, pero el certificado requiere completar todo antes del 31 de diciembre del año en curso.


Resumen del flujo completo

Paso Acción Herramienta / Sitio
1 Leer el enunciado del ejercicio cs50.harvard.edu/x
2 Abrir el entorno de desarrollo cs50.dev (VS Code en la nube)
3 Escribir y probar tu código Terminal + editor en cs50.dev
4 Verificar corrección del código check50
5 Verificar estilo del código style50
6 Enviar el ejercicio submit50

Consejos finales

  • 🔁 No te rindas al primer error. Los mensajes de check50 te dicen exactamente qué caso está fallando. Úsalos para depurar.
  • 💬 Usa los recursos de ayuda: el foro oficial de CS50 en cs50.stackexchange.com y el servidor de Discord de CS50 son muy activos.
  • 📁 Organiza tus carpetas: crea una carpeta por semana y dentro una carpeta por ejercicio. Eso facilitará el trabajo con submit50.
  • 🚫 No compartas tu código públicamente antes de terminarlo. La política de honestidad académica de CS50 es estricta.
  • El certificado es gratis si completas todos los psets y el proyecto final con una puntuación de al menos 70% en cada uno.

¿Tienes alguna duda sobre algún ejercicio específico de CS50x? Déjala en los comentarios 👇

0/Deja un comentario/Comentarios

¡Hola! Nos alegra mucho que hayas llegado hasta aquí y que estés leyendo este artículo en Edeptec.
Este formulario es un espacio abierto para ti: puedes dejar un comentario con tus dudas, sugerencias, experiencias o simplemente tu opinión sobre el tema tratado.

» ¿Te resultó útil la información?
» ¿Tienes alguna experiencia personal que quieras compartir?
» ¿Se te ocurre algún tema que te gustaría ver en próximos artículos?

Recuerda que este espacio es para aprender y compartir, por eso te animamos a participar de manera respetuosa y constructiva. Tus comentarios pueden ayudar a otros lectores que están en el mismo camino, ya sea en electrónica, programación, deportes o tecnología.

¡Gracias por ser parte de esta comunidad de aprendizaje! Tu participación es lo que hace crecer este proyecto.