Diferencia entre revisiones de «Tareas»
De Wiki del curso de C
(Página creada con «== Tarea 1: Versión inicial del mundo == # Haz un fork del repositorio con tu nombre # Clona tu repositorio # Completa el esqueleto proporcionado para implementar una pri...») |
(→Tarea 2: Estructurado, estructuras y makefile) |
||
Línea 12: | Línea 12: | ||
## Sí -> ¡Enhorabuena! Ya has terminado la tarea 1 | ## Sí -> ¡Enhorabuena! Ya has terminado la tarea 1 | ||
− | == Tarea 2: | + | == Tarea 2: Código modular, estructuras y makefile == |
a) Divide tu programa en 3 fichero: | a) Divide tu programa en 3 fichero: |
Revisión del 19:40 24 abr 2017
Tarea 1: Versión inicial del mundo
- Haz un fork del repositorio con tu nombre
- Clona tu repositorio
- Completa el esqueleto proporcionado para implementar una primera versión funcional del juego de la vida
- Sube los cambios al tu repositorio
- Haz un pull request
- Arregla las correcciones del profesor
- Sube las correcciones a tu repo
- ¿Has conseguido que te acepten el pull request?
- NO -> goto 6
- Sí -> ¡Enhorabuena! Ya has terminado la tarea 1
Tarea 2: Código modular, estructuras y makefile
a) Divide tu programa en 3 fichero:
-
main.c
: Implementará el bucle principal del juego -
gol.h
: Tendrá las declaraciones de las funciones relacionadas con el juego de la vida -
gol.c
: Tendrá las definiciones de las funciones anteriores
b) Crea un makefile
para gestionar la compilación y dependencias
Tarea 3: Primera aproximación a objetos
1. Encapsula tu mundo en la siguiente estructura:
struct world { bool w1[W_SIZE_X][W_SIZE_Y]; bool w2[W_SIZE_X][W_SIZE_Y]; };
2. Modifica tus funciones para que reciban un puntero a tu objeto. Añade el modificador const
siempre que no sea necesario modificar el objeto
Tu main.c
debería quedar más o menos así:
#include <stdio.h> #include <stdlib.h> #include "gol.h" int main() { int i = 0; struct world w; world_init(&w); do { printf("\033cIteration %d\n", i++); world_print(&w); world_step(&w); } while (getchar() != 'q'); return EXIT_SUCCESS; }