1 00:00:00,000 --> 00:00:09,410 2 00:00:09,410 --> 00:00:11,002 >> ZAMYLA CHAN: Imos divertirse con 15. 3 00:00:11,002 --> 00:00:13,960 15 é o primeiro xogo que comeza a aplicar. 4 00:00:13,960 --> 00:00:15,350 E é interactivo. 5 00:00:15,350 --> 00:00:16,079 Agora, non se preocupe. 6 00:00:16,079 --> 00:00:18,490 Non ten que escribir o todo mesmo. 7 00:00:18,490 --> 00:00:19,650 >> Comprobe o código de distribución. 8 00:00:19,650 --> 00:00:23,560 Porque unha morea de a estrutura do xogo xa está configurado para ti. 9 00:00:23,560 --> 00:00:27,820 El acepta e analiza unha liña de comandos argumento do usuario e crea unha 10 00:00:27,820 --> 00:00:30,900 placa con base nesa entrada. 11 00:00:30,900 --> 00:00:35,240 >> El comprobar se o xogo está gañado, e sae xa que o usuario do gañou o xogo. 12 00:00:35,240 --> 00:00:38,010 E para gañar o xogo, el está entrada do usuario e 13 00:00:38,010 --> 00:00:40,260 chama a función de movemento. 14 00:00:40,260 --> 00:00:44,270 Entón, nós imos estar aplicando catro funcións para o xogo de 15 - 15 00:00:44,270 --> 00:00:47,780 init, deseñar, mover, e gañou. 16 00:00:47,780 --> 00:00:50,000 >> En primeiro lugar, imos resolver o init. 17 00:00:50,000 --> 00:00:54,820 No init, para arrincar, representamos a tarxeta en un array de enteiros 2D. 18 00:00:54,820 --> 00:01:00,840 E esta é unha variable global chamada tarxeta con dimensións máxima e máximo, o 19 00:01:00,840 --> 00:01:03,550 dimensións máximas do consello. 20 00:01:03,550 --> 00:01:06,970 Agora, a dimensión real do consello é dada polo usuario, representada en 21 00:01:06,970 --> 00:01:10,300 o número enteiro d, o que podería ser menor que o máximo. 22 00:01:10,300 --> 00:01:13,030 Pero en C, non se pode cambiar o tamaño arrays. 23 00:01:13,030 --> 00:01:16,400 Entón, está preso con que dimensión máxima. 24 00:01:16,400 --> 00:01:19,510 >> O seu traballo en init é cubrir os valores do consello 25 00:01:19,510 --> 00:01:21,540 cos valores de corrección. 26 00:01:21,540 --> 00:01:23,600 Agora vimos matrices 1D. 27 00:01:23,600 --> 00:01:26,570 Pero como matrices 2D funciona? 28 00:01:26,570 --> 00:01:29,820 Hai un índice da liña, 0 índice, como sempre, e 29 00:01:29,820 --> 00:01:31,770 entón tamén da columna. 30 00:01:31,770 --> 00:01:35,790 >> E vai encher a súa reixa en en descendente valores, así como este. 31 00:01:35,790 --> 00:01:41,330 Reixa 0, 0, liña 0, columna 0, é 8. 32 00:01:41,330 --> 00:01:42,930 Reixa 0, 1 e 7. 33 00:01:42,930 --> 00:01:48,160 É dicir, para un exemplo onde d, pouco d, é 3. 34 00:01:48,160 --> 00:01:52,630 Agora, o consello en 15 tamén conterá un azulexo branco, se xa xogou 35 00:01:52,630 --> 00:01:53,940 co xogo físico. 36 00:01:53,940 --> 00:01:56,350 >> Pero consello é un array de enteiros. 37 00:01:56,350 --> 00:01:58,880 Así, todos os valores deben ser enteiros. 38 00:01:58,880 --> 00:02:06,580 Polo tanto, cómpre a vostede decide un enteiro valor para representar un azulexo branco. 39 00:02:06,580 --> 00:02:10,250 >> Para arrincar a súa tarxeta, pode utilizar estruturas de loop para conter a 40 00:02:10,250 --> 00:02:16,100 estado inicial da placa, onde bordo i, j representa o elemento en 41 00:02:16,100 --> 00:02:19,050 i fila e columna j. 42 00:02:19,050 --> 00:02:20,710 Comezan en orde descendente. 43 00:02:20,710 --> 00:02:24,200 E lembre que, se o número de pezas é estraño, entón vai 44 00:02:24,200 --> 00:02:29,260 ten que cambiar o lugar de 2 e de 1. 45 00:02:29,260 --> 00:02:31,420 Polo tanto, temos o noso consello inicializar. 46 00:02:31,420 --> 00:02:32,683