1 00:00:00,000 --> 00:00:09,410 2 00:00:09,410 --> 00:00:11,002 >> ZAMYLA CHAN: Låt oss ha kul med 15. 3 00:00:11,002 --> 00:00:13,960 15 är det första spelet som du får genomföra. 4 00:00:13,960 --> 00:00:15,350 Och det är interaktivt. 5 00:00:15,350 --> 00:00:16,079 Nu, inte oroa dig. 6 00:00:16,079 --> 00:00:18,490 Du behöver inte skriva det hela saken själv. 7 00:00:18,490 --> 00:00:19,650 >> Titta på distributionskoden. 8 00:00:19,650 --> 00:00:23,560 Eftersom en hel del av spelet strukturen är redan inställd för dig. 9 00:00:23,560 --> 00:00:27,820 Det accepterar och tolkar en kommandorad argument från användaren, och skapar en 10 00:00:27,820 --> 00:00:30,900 styrelsen baserat på den ingången. 11 00:00:30,900 --> 00:00:35,240 >> Den kontrollerar om spelet är vunnet, och utgångar gång användarens vunnit spelet. 12 00:00:35,240 --> 00:00:38,010 Och för att vinna spelet, blir det inmatning från användaren och 13 00:00:38,010 --> 00:00:40,260 kallar flytten funktionen. 14 00:00:40,260 --> 00:00:44,270 Så vi kommer att genomföra fyra funktioner för spelet i 15 - 15 00:00:44,270 --> 00:00:47,780 init, rita, flytta och vann. 16 00:00:47,780 --> 00:00:50,000 >> Först, låt oss ta itu init. 17 00:00:50,000 --> 00:00:54,820 I init, för initialize, vi representerar styrelsen i ett 2D heltal array. 18 00:00:54,820 --> 00:01:00,840 Och det här är en global variabel som heter styrelse med måtten max och max, det 19 00:01:00,840 --> 00:01:03,550 maximala dimensioner i styrelsen. 20 00:01:03,550 --> 00:01:06,970 Nu, den verkliga dimensionen av kortet ges av användaren, som representeras i 21 00:01:06,970 --> 00:01:10,300 heltalet d, vilket kunde vara mindre än max. 22 00:01:10,300 --> 00:01:13,030 Men i C, kan du inte ändra storlek på matriser. 23 00:01:13,030 --> 00:01:16,400 Så du har fastnat med det maximal dimension. 24 00:01:16,400 --> 00:01:19,510 >> Ditt jobb i init är att fylla värdena av brädan 25 00:01:19,510 --> 00:01:21,540 med rätt värden. 26 00:01:21,540 --> 00:01:23,600 Nu har vi sett 1D arrayer. 27 00:01:23,600 --> 00:01:26,570 Men hur 2D-arrayer fungerar? 28 00:01:26,570 --> 00:01:29,820 Det är ett index på den raden, 0-index, som alltid, och 29 00:01:29,820 --> 00:01:31,770 då också av kolonnen. 30 00:01:31,770 --> 00:01:35,790 >> Och du kommer att fylla din rutnät på i fallande värden, precis som denna. 31 00:01:35,790 --> 00:01:41,330 Grid 0, 0, rad 0, kolumn 0, är ​​8. 32 00:01:41,330 --> 00:01:42,930 Ikoner 0, 1 är 7. 33 00:01:42,930 --> 00:01:48,160 Detta är för ett exempel där d, litet d, är 3. 34 00:01:48,160 --> 00:01:52,630 Nu måste styrelsen i 15 även innehålla en tom sida vid sida, om du någonsin spelat 35 00:01:52,630 --> 00:01:53,940 med det fysiska spelet. 36 00:01:53,940 --> 00:01:56,350 >> Men styrelsen är ett heltal array. 37 00:01:56,350 --> 00:01:58,880 Så alla värden måste vara heltal. 38 00:01:58,880 --> 00:02:06,580 Så det är upp till dig att bestämma ett heltal värde för att representera en tom bricka. 39 00:02:06,580 --> 00:02:10,250 >> För att initiera din bräda, kan du använda slingstrukturer som innehåller 40 00:02:10,250 --> 00:02:16,100 starttillstånd i styrelsen, där styrelsen i, betecknar j elementet vid 41 00:02:16,100 --> 00:02:19,050 rad i och kolumn j. 42 00:02:19,050 --> 00:02:20,710 De börjar i fallande ordning. 43 00:02:20,710 --> 00:02:24,200 Och kom ihåg att om antalet plattor är märkligt, då du kommer att 44 00:02:24,200 --> 00:02:29,260 måste byta plats av 2 och 1. 45 00:02:29,260 --> 00:02:31,420 Så där har vi vår initierad styrelse. 46 00:02:31,420 --> 00:02:32,683