>> ZAMYLA Chan: sahib edək on beş ilə fun.
On beş almaq ki, ilk oyun həyata keçirilməsi və interaktiv üçün.
İndi, narahat deyil.
Siz yazmaq yoxdur bütün şey özünüzü.
Bölüşdürülməsi kodu baxmaq, çünki Oyun quruluşu çox artıq
sizin üçün qurmaq.
Bu qəbul və bir command line çözümler istifadəçi və dəlil bir yaradır
board ki, daxil əsaslanır.
Bu oyun qalib əgər yoxlayır və çıxışlar istifadəçinin oyun qazandı dəfə.
Və oyun qazanmaq üçün, o olur istifadəçi giriş və
Move funksiyasını çağırır.
>> Beləliklə, biz dörd həyata olacaq on beş oyun üçün funksiyaları,
init, heç-heçə hərəkət və qazandı.
Birincisi, init həll edək.
Init ildə initialize, biz təmsil bir 2D tam array board.
Bu adlanan qlobal dəyişən deyil ölçüləri MAX, və MAX ilə board,
heyəti maksimum ölçüləri.
İndi, şura faktiki ölçüsü təmsil istifadəçi tərəfindən verilir
tam d, hansı ki, MAX az olacaq.
Lakin, C, serialların ölçüsünü bilməz, belə ki, siz vurulmuş edirik
ki, maksimum ölçüsü.
>> Init Sizin iş yaşayır edir heyəti dəyərlər
düzgün dəyəri.
İndi biz 1D gördüyünüz seriallardakı etdik, ancaq necə 2D serialların çalışır?
Orada sıra bir index var, sıfır də sonra həmişə dizine və
sütun.
Və siz sizin grid doldurmaq lazımdır yalnız bu kimi dəyərlər enən.
Grid, 0, 0, sıra 0, sütun 0, grid 0, 1 7, 8.
Bu, misal üçün olduğu d, az d, 3.
>> İndi, on beş ildə board də olmalıdır Əgər varsa, bir boş kafel ehtiva
fiziki oyun.
Lakin, board tam array, belə ki, bütün dəyərlər integers olmalıdır.
Belə ki, bir tam qərar sizə var Boş bir kafel təmsil dəyəri.
Sizin board başlamaq üçün, istifadə edə bilərsiniz ehtiva loop strukturları
board başlayaraq dövlət, harada board i j element at təmsil
satır i və sütun j.
Onlar azalan qaydada başlamaq və , unutmayın ki, əgər plitələr sayı
tək, sonra siz olacaq 2 və 1 yer dəyişdirmək.
Belə ki, orada, biz bizim başlatılmış board.
>> İndi biz başlatılmış etdik ki, bizim , onu çəkmək üçün vaxt board var.
Draw hazırki dövlət çap edəcək board, ancaq əmin etmək lazımdır
eyni qaydada plitələr çap etmək Əgər siz onları başlatılmış etdik ki,.
Və siz də format lazımdır Sizin ədəd düzgün.
Biz vahid rəqəm var və ola bilər, çünki ikirəqəmli, sonra istədiyiniz
əvvəl boş çap hər hansı bir rəqəmli ədəd.
Siz istifadə edərək ki, istifadə tutucu -.
>> Amma bizim boş xatırlayıram.
Biz faktiki sayı çap istəmirəm biz təmsil etmək üçün seçilmişdir etdik ki,
ki, boş board kosmik, lakin biz də heç bir şey çap istəmirəm.
Beləliklə, nə siz nə edə bilər bir simvolu müəyyən edir və ya təmsil etmək xarakter
boş kafel.
Əvvəlki nümunələri mən bir seçdiyiniz vurğulayır, və sonra yalnız çap
ki, siz boş çatmaq zaman Sizin heçə funksiyası space.
>> Belə ki, çəkmək loops üçün iç içə olacaq.
Bu kimi bir şey.
Hər cərgə üçün, və sonra hər bir dəyər üçün satır, çap olacaq
Bu məkanda dəyər.
Bütün dəyərləri çap etdik sırasında, sonra
yeni xətt çap edə bilərsiniz.
Xatırla ki, heç-heçə üçün sifariş funksiyası sifariş echo və ya güzgü lazımdır
Sizin başlatılmış funksiyası.
>> Siz board başlatılmış və indi Siz onu tərtib etdik ki, imkan vaxt
istifadəçi onu redaktə və onların hərəkət etmək.
Belə ki, Fifteen.c funksiyası, bu Proqram istifadəçi daxil edir və
sonra keçən, hərəkət funksiyası çağırır kafel sayının ki,
istifadəçi hərəkət etmək istəyir.
İndi, ehtiyatlı olun.
Bu kafel faktiki sayı və onun faktiki mövqe.
Belə ki, kafel-nin axtarmaq lazımdır harada bilmək mövqe.
>> İndi, yalnız istifadəçi imkan verməlidir hüquqi əgər bir hərəkət etmək.
Hüquqi hərəkət edir ki, bir kafel deyil boş kafel bitişik.
Ki, yuxarıda və aşağıda deməkdir Bu və sağ.
Belə ki, bilmək lazımdır yerləşir boş kafel həmçinin.
İndi hər siz aradığınız hərəkət istifadəçilər kafel, lakin yəqin ki, var
boş kafel axtarmaq üçün yaxşı deyil siz bunu edirik, çünki hər dəfə
hər bir zaman istifadəçi hərəkət etmək istəyir.
Belə ki, əvəzinə, bu yadda yaxşı olduğu boş kafel bəzi istifadə edir
yaxşı dəyişənlərin adına.
Siz istifadəçi imkan verir bir dəfə Belə ki, hərəkət, onlar var onların
on beş oyun qalib yolu.
>> On beş, plitələr oyun qazanmaq üçün xüsusi qaydada olmalıdır, və
qazandı funksiyası olub-olmadığını yoxlayır oyun qalib edir.
Bu oyun qalib əgər True qaytarır və plitələr düzgün qaydada,
və False başqa.
Belə ki, on beş, plitələr oyunu qazanmaq üçün ilə, sifariş artan olmalıdır
sağ alt küncündə boş kafel.
Belə ki, necə yoxlamaq nə olub istifadəçi hüququna board köçürülüb
orientation?
>> Yaxşı, siz board üzərində təkrarlamaq lazımdır əmin etmək dəyərləri yoxlamaq
onlar doğru yerdə istəyirik.
Bunu etmək üçün, siz nested istifadə edə bilərsiniz Siz nə kimi loops üçün
heçə və init ilə.
Yoxlamaq üçün yollar bir neçə var və board olub doğrulamak
doğru və qalib formalaşması, baxmayaraq ki.
Siz soldan sağa getmək varsa, başlayaraq aşağı üst sıra, sonra hər
sayı daha çox olmalıdır Əvvəlki.
Siz var qiymətləndiririk nə haqqında ehtiyatlı olun baxmayaraq boş kafel üçün seçilmiş.
>> Və ya bir counter dəyişən istifadə edə bilər əgər hər birinin dəyəri yerində olmasını təmin
Siz bir növ ilə gəlmək Bu təmsil formula.
Belə ki, eksperiment fun var riyaziyyat ilə.
Bir yol, qaytarılması ilə gəlmək sonra True istifadəçi oyun qazandı dəfə.
Amma hansı bir dəyəri səhv, geri əgər Yalan, istifadəçi hərəkət davam edir
onlar oyun qalib yoxdur, çünki.
Siz yanaşı, bu çek həyata keçirmək və bir dəfə initialize ilə heç-heçə, və hərəkət
Siz on beş oyun başa etdik.
Təbrik edirik və əyləncə oyun var.
My name Zamyla və bu CS50 edir.