Amageyimu yindlela yokuzijabulisa etholakala kubantu. Imidlalo yazo zonke izinhlobo iyatholakala ku-inthanethi, kumadivayisi eselula, kumakhompyutha edeskithophu, njll. Manje akusona isikhathi sokudala omunye waleyo midlalo eyinselele.
Sisebenzisa iPython, sizokwenza umdlalo we-CLI tic-tac-toe. Masisebenzise i-Python ukwakha igeyimu ye-Tic Tac Toe eqondile. Izokusiza ekudaleni i-logic yomdlalo nokufunda ukuhlela ikhodi.
I-Tic-Tac-Toe
Ngaphambi kokuthi siqale ukubhala amakhodi, ngicabange ukuthi ngizofingqa igeyimu ngokushesha futhi ngixoxe ngohlelo lwami lokuyithuthukisa.
Okokuqala, sizosungula umcabango wokuthi ama-X ahlala ethatha isinyathelo kuqala futhi ehamba kuqala, enikeza umsebenzisi ithuba lokuthatha isinyathelo.
Kusuka kukhonsoli, kuzofakwa inombolo ephakathi kuka-1 no-9. Kugridi lapho inombolo ngayinye ihambelana nenombolo ehlukile (phezulu kwesokunxele ngu-1, ngezansi kwesokudla ngu-9).
Ikhompyutha izonquma ngokuzenzakalelayo futhi inyakaze uma umsebenzisi enyakaza. Iluphu yegeyimu eyodwa eyinhloko ebiza inani lezinqubo ezihlukahlukene izosetshenziswa yimi.
Imuphi umsebenzi oqedwayo cishe ukhonjisiwe kusihloko ngasinye salesi sifundo esisekelwe embhalweni.
Ukuklama Ibhodi
Sizobonisa ibhodi lethu sisebenzisa isakhiwo segridi, njengoba ngibonisile ngaphambilini. Sizokwenza uhlu oluqanjwe ibhodi kuPython ukwenza lokhu, futhi luzoqala ngamavelu angenalutho ayi-10.
Ngenxa yokuthi umsebenzisi angafaka izinombolo 1 kuye ku-9 kuphela, hhayi u-0 kuye ku-8, sinamanani angenalutho ayi-10 kuno-9. Ngakho-ke, ukuze senze izinto zibe lula, sizonikeza okokuqala ohlwini lwethu inani "umbhalo ongenalutho."
Ngale ndlela, singasebenzisa u-1–9 esikhundleni sika-0–8 ukuze sikhombe okufakiwe ohlwini lwethu.
FakaIncwadi()
Incwadi kanye ne-Pos kuzoba okokufaka okubili kwalo msebenzi. Izobeka kuphela incwadi eceliwe endaweni eceliwe.
I-spaceIsFree(pos)
Kalula nje, le ndlela izosazisa uma indawo eshiwo imahhala. Ngakho-ke, ayikho incwadi lapho kakade. I-Pos, ukungqubuzana kwayo kuphela, kuzoba inombolo ephakathi kuka-1 no-9.
Ibhodi lokuphrinta(ibhodi)
Ibhodi lithunyelwa njengengxabano kule ndlela, elibonisa kukhonsoli.
isWinner()
Ngokusekelwe ebhodini lamanje, lo msebenzi uzosazisa uma incwadi ehlinzekiwe iwinile. Inemingcele emibili: i-le nebhodi (incwadi).
Kufanele kube u-“X” noma u-“O.” Vele ubheke ukuze ubone ukuthi uhlamvu olushiwo lukhona yini emgqeni ngamunye ongawina ebhodini.
okuyinhloko ()
Uma sifuna ukuqala umdlalo, sizoyibiza le ndlela. Izobiza yonke imisebenzi eminingi yohlelo lwethu futhi iqondise indlela uhlelo okufanele lusebenze ngayo.
isBoardFull()
Uma inikezwa njengokufakwayo, le ndlela izovele ibuyisele Iqiniso uma ibhodi ligcwele futhi Amanga ngenye indlela.
playerHambisa()
Ngale ndlela, sizocela ukususwa kumsebenzisi futhi sikuqinisekise. Incwadi izokwengezwa ebhodini uma ukuthutha kusemthethweni. Uma kungenjalo, sizoqhubeka nokucela impendulo yomsebenzisi.
I-CompMove() - AI
I-AI manje isizoqala. Ukunyakaza kwamakhompyutha kuzolawulwa yilo msebenzi. Izohlola ibhodi bese ikhetha umnyakazo ongcono kakhulu ongawenza.
Okulandelayo uhlu lwe-algorithm esizoyisebenzisa ukwenza lokhu.
- Uma isinyathelo samanje singaqedwa, dlulela kwesilandelayo.
- Thatha umnyakazo onqobayo uma ukwazi.
- Yiya kuleso simo ejikeni elilandelayo uma umdlali enethuba lokuwina.
- Khetha ikhona ulijike. Khetha ngokungahleliwe uma kunezinketho ezimbalwa.
- Zibeke phakathi nendawo.
- Cabangela omunye wemiphetho. Khetha ngokungahleliwe uma kunezinketho ezimbalwa.
- Uma ingekho indlela yokuhamba, umdlalo uphela ngokulingana.
khethaOkungahleliwe()
Njengoba kunikezwe uhlu lwezindawo ezingaba khona, lo msebenzi uzokhetha ngokungahleliwe isenzo ozosithatha.
Ukuqala Komdlalo
Umdlalo usungaqala manje njengoba sesiqede yonke imisebenzi yethu. Okuzodingeka sikwenze nje ukubiza abaphambili uma sifuna ukuwugijima kanye umdlalo.
Kodwa esimweni sethu, sifuna igeyimu iqhubeke nokusebenza kuze kube yilapho umsebenzisi enquma ukuthi akasafuni ukudlala, ngakho-ke sizongeza iluphu encane emugqeni omkhulu.
Qedela Ikhodi
Nansi yonke ikhodi yomdlalo wethu, osuqediwe manje.
Okukhiphayo
Isiphetho
Buhlungu!
Umdlalo owenze kusukela ekuqaleni. Akuwona umdlalo esiwudlala njalo. Kodwa isiza ekubhaleni i-logic kanye nokugcinwa kwesakhiwo esicacile ngekhodi.
Jabulela ukubhala ngekhodi!
shiya impendulo