1 00:00:00,000 --> 00:00:09,410 2 00:00:09,410 --> 00:00:11,002 >> ZAMYLA CHAN: Vamos a divertirnos con 15. 3 00:00:11,002 --> 00:00:13,960 15 es el primer juego que se llega a implementar. 4 00:00:13,960 --> 00:00:15,350 Y es interactiva. 5 00:00:15,350 --> 00:00:16,079 Ahora bien, no se preocupe. 6 00:00:16,079 --> 00:00:18,490 Usted no tiene que escribir la Todo esto a ti mismo. 7 00:00:18,490 --> 00:00:19,650 >> Compruebe el código de distribución. 8 00:00:19,650 --> 00:00:23,560 Debido a que una gran parte de la estructura del juego ya está preparado para usted. 9 00:00:23,560 --> 00:00:27,820 Acepta y analiza una línea de comandos argumento de que el usuario, y crea un 10 00:00:27,820 --> 00:00:30,900 consejeros en función de esa entrada. 11 00:00:30,900 --> 00:00:35,240 >> Comprueba si el juego se gana y salidas una vez que el usuario ha ganado la partida. 12 00:00:35,240 --> 00:00:38,010 Y para ganar el juego, se pone entrada del usuario y 13 00:00:38,010 --> 00:00:40,260 llama a la función de desplazamiento. 14 00:00:40,260 --> 00:00:44,270 Así que vamos a estar implementando cuatro funciones para el juego del 15 - 15 00:00:44,270 --> 00:00:47,780 init, dibujar, mover y ganado. 16 00:00:47,780 --> 00:00:50,000 >> En primer lugar, vamos a abordar init. 17 00:00:50,000 --> 00:00:54,820 En init, para initialize, representamos la junta en una matriz de enteros 2D. 18 00:00:54,820 --> 00:01:00,840 Y esta es una variable global llamada tablero con dimensiones max y max, la 19 00:01:00,840 --> 00:01:03,550 dimensiones máximas de la junta. 20 00:01:03,550 --> 00:01:06,970 Ahora, la dimensión real de la junta está dada por el usuario, representado en 21 00:01:06,970 --> 00:01:10,300 el número entero d, lo que podría ser inferior a máx. 22 00:01:10,300 --> 00:01:13,030 Pero en C, no se puede cambiar el tamaño de las matrices. 23 00:01:13,030 --> 00:01:16,400 Así que le pegan con que máxima dimensión. 24 00:01:16,400 --> 00:01:19,510 >> Su trabajo en init es poblar los valores de la tabla de 25 00:01:19,510 --> 00:01:21,540 con los valores correctos. 26 00:01:21,540 --> 00:01:23,600 Ahora, hemos visto matrices 1D. 27 00:01:23,600 --> 00:01:26,570 Pero ¿cómo funcionan los arrays 2D? 28 00:01:26,570 --> 00:01:29,820 Hay un índice de la fila, 0 índice, como siempre, y 29 00:01:29,820 --> 00:01:31,770 a continuación, también de la columna. 30 00:01:31,770 --> 00:01:35,790 >> Y usted llena su red en en descendiente valores, al igual que este. 31 00:01:35,790 --> 00:01:41,330 Rejilla 0, 0, fila 0, columna 0, es 8. 32 00:01:41,330 --> 00:01:42,930 Rejilla 0, 1 es 7. 33 00:01:42,930 --> 00:01:48,160 Este es un ejemplo en donde d, poco d, es 3. 34 00:01:48,160 --> 00:01:52,630 Ahora, el Consejo en 15 también debe contener una ficha en blanco, si alguna vez has jugado 35 00:01:52,630 --> 00:01:53,940 con el juego físico. 36 00:01:53,940 --> 00:01:56,350 >> Pero tablero es una matriz de enteros. 37 00:01:56,350 --> 00:01:58,880 Así que todos los valores deben ser enteros. 38 00:01:58,880 --> 00:02:06,580 Así que depende de usted para decidir un entero valor para representar un azulejo en blanco. 39 00:02:06,580 --> 00:02:10,250 >> Para inicializar su tarjeta, puede utilizar bucle estructuras para contener la 40 00:02:10,250 --> 00:02:16,100 estado inicial de la junta, donde a bordo i, j representa el elemento en 41 00:02:16,100 --> 00:02:19,050 fila i y la columna j. 42 00:02:19,050 --> 00:02:20,710 Comienzan en orden descendente. 43 00:02:20,710 --> 00:02:24,200 Y recuerde que si el número de fichas es impar, entonces usted va a 44 00:02:24,200 --> 00:02:29,260 tener que cambiar la ubicación de 2 y de 1. 45 00:02:29,260 --> 00:02:31,420 Así que ahí tenemos nuestra junta inicializado. 46 00:02:31,420 --> 00:02:32,683