Mundarija:
- 1 -qadam: Ishni boshlashdan oldin …
- 2 -qadam: O'ylash qoidalari
- 3 -qadam: Bloklar dasturi: o'zgaruvchilar
- 4 -qadam: funktsiyalar
- 5 -qadam: Dasturni ishga tushirish va silkinish hodisalari va hodisalarni boshqaruvchilari
- 6 -qadam: ishga tushirish xabari va vazifalari
- 7 -qadam: tugmani bosish hodisasi - BITs chaqirig'iga javob bering
- 8 -qadam: B tugmasini bosing Voqeani bosing - BITs chaqiruviga javob yuboring
- 9 -qadam: yutish/yo'qotish va qolgan funktsiyalar
- 10 -qadam: Simulyator va kod
Video: Bit nima deb o'ylaydi? BBC Microbit yordamida oddiy taxmin qilish o'yinini qiling!: 10 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Men bir nechta Internetdagi maqolalarda ular haqidagi ijobiy sharhlarni o'qib, BBC Microbits -ni tanladim.
BIT bilan tanishishga harakat qilib, men Microsoft Blocks Internet -muharriri bilan bir necha soat o'ynadim va oddiy taxmin qilish o'yini topdim.
Ushbu IBLE -da biz o'yin qoidalari haqida gaplashamiz va Bloklar muharririning turli kod bloklarida to'plangan funktsiyalarni ko'rib chiqamiz.
Nihoyat, hayajonlangan tomoshabinlar onlayn simulyatorga o'tishlari va bu oddiy o'yinni tortib olishlari mumkin.
Qani boshladik.
1 -qadam: Ishni boshlashdan oldin …
Uskuna
BBC Microbit platasi bilan tanishish oson. Bu IBLE uchun siz bilishingiz kerak bo'lgan narsa shundaki, bu 2 tugmachali kichik taxtali, bir nechta kichik LED-lar va quvvat manbai vazifasini bajaruvchi va USB-ni rozetkaga yuklash vositasi..
Kichkina LEDlar majmuasini turli xil naqshlarda yoqish uchun dasturlash mumkin.
Eslatma:
Bu IBLE uchun sizga jismoniy taxta kerak emas! BBC Microbit saytida siz ishlab chiqargan kodni tekshirish uchun onlayn simulyator mavjud.
Dasturiy ta'minot
Bu IBLE BBC Microbit va/yoki Internet -bloklar muharriri bilan ishlashni boshlash haqida batafsil ma'lumot bermaydi.
Tomoshabinlarni keyingi qadamlarga o'tishdan oldin BBC Micorbit manbasini o'rganishga da'vat etiladi.
BBC Microbit juda qulay yondashuv yordamida dasturlashni o'rgatish uchun yaratilgan, shuning uchun boshqa dasturlash tili bilan tanishish juda yoqimli, lekin talab qilinmaydi, ayniqsa siz dasturlashni o'rganish uchun Microsoft Blocks Editor-dan foydalanmoqchi bo'lsangiz.
Shunga qaramay, men BBC Microbit-dan boshlash osonroq bo'lgan mahsulotni hali uchratmaganman, chunki men boshqa bir nechta mikrokontrolder dasturlash platformalariga egaman.
2 -qadam: O'ylash qoidalari
O'yin qoidalari quyidagicha:
- Yoqilgandan so'ng, BIT raqam haqida o'ylaydi va LED -panelida xabarni bosib, bu raqam nima ekanligini o'ylab topishga odamni chaqiradi va javobni kutadi.
- O'yinchi taxmin qiladi va chap bosish tugmachasini (A) ko'p javob beradi - Masalan, agar o'yinchi 5 deb taxmin qilgan bo'lsa, tugma 5 marta bosiladi.
- Javobni BITga yuborish uchun o'yinchi o'ng bosish tugmachasini (B) bir marta bosadi!
- Agar o'yinchi to'g'ri taxmin qilsa, o'yinchi ochko oladi, agar bo'lmasa, BIT ochko oladi
- Agar bitta o'yinchi diapazondan tashqarida raqamni taxmin qilgan bo'lsa, boshqa o'yinchi ochko to'playdi - BIT o'zining LED displeyida katta X ni ko'rsatadi va yangi raqamni taxmin qilib, vazifani takrorlaydi. Misol: Agar BIT sizni 1 dan 5 gacha bo'lgan sonni taxmin qilishga undagan bo'lsa, siz 6 ni taxmin qilgan bo'lsangiz yoki Nolinchi deb taxmin qilgan bo'lsangiz (A tugmachasini bosishdan oldin B tugmachasini bosib), bu tur bekor hisoblanadi.
- O'yinchilardan biri ruxsat etilgan maksimal ballni olmaguncha, qiyinchilik-javob davom etadi
Yangi o'yinni boshlash:
Istalgan vaqtda yangi o'yinni boshlash uchun, BITni silkitib qo'ying! Yoki quvvatni uzing va qayta ulang.
3 -qadam: Bloklar dasturi: o'zgaruvchilar
Dastur quyida keltirilgan funktsiyalariga mos keladigan bir nechta o'zgaruvchilardan foydalanadi. Bu o'zgaruvchilar Bloklar muharriridagi O'zgaruvchilarni dasturlash yorlig'ini bosish orqali yaratilishi mumkin
BIT_SCORE - BIT tomonidan to'plangan ballarni kuzatib boradi
bitGuessed - Bu o'zgaruvchi BIT tomonidan taxmin qilingan tasodifiy qiymatga ega
CHECK - "True" ga o'rnatilganda, BIT o'yinchilarning taxminlari BITs taxminiga tengligini tekshiradi
GAME_RANGE - Bu raqam BIT yoki o'yinchining taxmin qilishini cheklaydi
Misol: Agar 6 ga o'rnatilgan bo'lsa, har bir o'yinchi 1dan 6gacha taxmin qila oladi
MSG - O'yin kontekstiga qarab har xil xabarlarni ko'rsatish uchun o'zgartirilgan satr
PLAYER_SCORE - o'yinchi to'plagan ballarni kuzatib boradi
playerGuess - O'yinchi taxmin qilgan raqam bu o'zgaruvchiga yoziladi
ESLATMA
Birinchi nomlangan element umumiy va standart o'zgaruvchidir va uni e'tiborsiz qoldirib bo'lmaydi
4 -qadam: funktsiyalar
O'quv jarayonining bir qismi va yaxshi tashkil qilish uchun kod asosiy dasturda chaqirilishi yoki chaqirilishi mumkin bo'lgan bir qancha funktsiyalarga bo'lingan. O'zgaruvchilar kabi, funktsiyalarni "Kengaytirilgan> Funktsiyalarni dasturlash" yorlig'ini bosish orqali yaratish va ularga kirish mumkin.
Bu erda funktsiyalarning qisqacha tavsifi:
announcWinner - Bu funksiya g'olib o'yinchiga yuborilgan "Yutuq" xabarini chop etadi
doChallenge - BIT raqamni taxmin qilish va o'yinchiga qiyinchilik tug'dirish uchun chaqiradigan funksiya
showBadGuess - LED panelida ulkan X belgisi bo'lgan xabarni ko'rsatadi, agar o'yinchilardan biri ruxsat etilgan doiradan tashqarida taxmin qilsa.
showLose - agar BIT o'yinchi ustidan kurashda g'alaba qozonsa chaqiriladi
showMessage - ma'lum bir oraliqdagi raqamni o'yinchi o'yinchisini chaqiradigan xabarni taqdim etadi
showWin - o'yinchi BIT bo'yicha taxminiy turda g'alaba qozonganida chaqiriladi
5 -qadam: Dasturni ishga tushirish va silkinish hodisalari va hodisalarni boshqaruvchilari
"Ishga tushganda" va "tebranishda" - bu voqea ishlovchilari, ular "boshlash" va "silkinish" hodisalari sodir bo'lganda chaqiriladi. Bloklar kodidan ko'rinib turibdiki, bu ikkita voqea ishlovchisi chaqirilganda nima bo'ladi, xuddi shunday:
- ShowMessage () funktsiyasi o'yin boshlanganda xabarni ko'rsatish uchun chaqiriladi
- Xabar ko'rsatilgandan so'ng 650 milli-soniyali qisqa pauza mavjud
- DoChallenge () funktsiyasi chaqiriladi, unda BIT raqamni taxmin qiladi va o'yinchi taxmin qilishini kutadi.
Keyingi bosqichda biz ikkita funktsiyani ko'rib chiqamiz.
Ya'ni, "ishga tushirish" va "tebranish" hodisalarini boshqaruvchilar o'rtasida tub farqlar mavjud:
- BIT ishga tushirilganda, "ishga tushirish" voqea boshqaruvchisi ishlaydi, masalan, BIT quvvatini uzish va qayta ulashda.
- Dastur ishga tushganda bir marta sodir bo'lishi kerak bo'lgan ba'zi narsalar "ishga tushganda" va boshqa dasturning boshqa joylarida aniqlanmagan.
- GAME_RANGE o'zgaruvchisini ishga tushirish - bu 6 ga boshlangan, ya'ni o'yinchilar 1 dan 6 gacha raqamni taxmin qilishlari mumkin.
- "Ishga tushirish" asosiy BIT funktsiyasi bo'lgani uchun, unga Bloklar muharririning asosiy dasturlash yorlig'idan kirish ajablanarli emas.
- Boshqa tomondan, "tebranishda" - bu voqea ishlovchisi, u har safar foydalanuvchi BIT -ga tez silkitish shaklida kirishni taqdim qilganda chaqiriladi.
- Shunday qilib, "tebranishda" voqea ishlovchilarini Bloklar muharririning Kirish dasturlash yorlig'ida topish mumkin
6 -qadam: ishga tushirish xabari va vazifalari
ShowMessage () Startup Message funktsiyasi - bu oddiy ekran, bu BITs LED palitrasini aniq ekran buyrug'i bilan tozalaydi va o'yinchini raqamni taxmin qilishga undovchi aylantiruvchi xabarni ko'rsatadi.
ShowMessage funktsiyalar blokidan ko'rinib turibdiki, GAME_RANGE o'zgaruvchisiga bir nechta sobit satrlar qo'shilib, oddiy xabarni ko'rsatadi:
O'ylaymanki, 0-6!
DoChallenge () funktsiyasi har bir sinov turining boshida chaqiriladi va shuning uchun doChallenge funktsiyalar blokidan ko'rinib turibdi:
- Inson o'yinchisidan yangi kirishni qabul qilishdan oldin playerGuess o'zgaruvchisini nolga o'rnatadi
- CHECK o'zgaruvchisini yolg'on holatga keltiradi - demak, raund boshlanadi va ikkala o'yinchi taxmin qilgan raqamlarni solishtirish vaqti kelmagan.
- Keyingi va eng asosiysi, BIT tasodifiy sonni GAME_RANGE tomonidan belgilangan diapazonda tanlaydi va uni bitGuessed o'zgaruvchisiga yozadi.
- Nihoyat, LED palitrasi savol belgisi belgisi bilan yoritilgan bo'lib, odam o'yinchisini BITs chaqirig'iga javob sifatida kiritishga undaydi!
Eslatma
Agar GAME_RANGE o'zgaruvchining qiymati oldingi bosqichda aytilganidek o'zgartirilsa, sizning o'yiningiz boshqacha ko'rinishi va harakat qilishi mumkin.
Birlashish funktsiyasi mag'lubiyat funktsiyasidir va uni Bloklar tahrirlovchisining matnli dasturlash yorlig'idan olish mumkin
7 -qadam: tugmani bosish hodisasi - BITs chaqirig'iga javob bering
BITs LED ekranida katta savol belgisi paydo bo'lgach, inson o'yinchisining vazifasiga javob berish uchun quyidagilarni bajarish kifoya:
- BIT 0 dan 6 gacha qanday raqamni o'ylab topishini taxmin qiling
- Javobingiz qancha bo'lsa, A tugmachasini ko'p marta bosing - Masalan, agar javobingiz 3 bo'lsa, A tugmasini 3 marta bosing.
Shubhasiz, tugmani bosish - bu foydalanuvchi kiritishi va shuning uchun "yoqish" tugmachasini boshqaruvchisiga Bloklar muharririning Kirish dasturlash yorlig'i orqali kirish mumkin. Har safar foydalanuvchi A tugmachasini bosganda, bu hodisa boshqaruvchisi quyidagilarni bajaradi:
- PlayerGuess o'zgaruvchisining qiymatini GAME_RANGE chegarasida bo'lsa, 1 ga oshiring (bu holda 6)
- Agar o'yinchi 7 yoki undan yuqori versiyani taqdim qilsa, taxmin bekor qilinadi va playerGuess nolga qaytariladi, bu esa o'yinchi taxminlarini bekor qiladi.
Keyingi harakat, biz keyingi bosqichda o'tadigan qiyinchiliklarga javob berishdir.
8 -qadam: B tugmasini bosing Voqeani bosing - BITs chaqiruviga javob yuboring
Inson o'yinchi B tugmachasini bir marta bosish orqali javobni BITga yuboradi. BIT rasmdagi kod belgilari bilan ko'rsatilgandek, o'yinchilarning javobini olgandan so'ng, "tugmani bosish" B tugmachasida bir nechta qadamlar bajariladi:
- CHECK bayrog'i "True" ga o'rnatiladi - bu BITning taxminini o'yinchilar bilan solishtirish uchun signal
- Gol faqat ikkala o'yinchi Nolinchi raqamdan kattaroq va GAME_RANGE chegarasida (6) taxmin qilingan bo'lsa, davom etadi, agar bo'lmasa, showBadGuess () funktsiyasi chaqiriladi - yaxshi taxmin qiluvchi o'yinchi ochko oladi, yomon o'yinchi esa bitta yutqazadi!
- Agar o'yinchilar BITlarnikiga mos kelsa, showWin () funktsiyasi chaqiriladi - o'yinchi bu turda g'alaba qozonadi!
- Agar yo'q bo'lsa, showLose () funktsiyasi chaqiriladi - BIT bu turda g'olib chiqadi!
- Har bir turning oxirida announcWinner () funktsiyasi orqali ikki o'yinchidan bittasi 3 ochko to'plab g'alaba qozonganligini tekshirish amalga oshiriladi - agar shunday bo'lsa, o'yin tugaydi va yakuniy g'olib e'lon qilinadi va barcha ballar va xabarlar e'lon qilinadi. qayta o'rnatish
- BIT doChallenge () funktsiyasiga qo'ng'iroq qilib, o'yinni qaytadan boshlaydi va o'yinchining javobini kutadi va jarayon takrorlanadi.
Keyingi bosqichlarda biz yangi funktsiyalarni muhokama qilamiz.
Kutmoq! Nolni qanday taxmin qilasiz?
- Agar siz random () Math funktsiyasiga qarasangiz, uning boshlang'ich qiymati nolga o'rnatilganligini va uni o'zgartirib bo'lmasligini ko'rasiz.
- BIT shuning uchun bu cheklov natijasida nolni taxmin qilish va o'yinchiga qarshi chiqish huquqiga ega
- Xuddi shunday, inson o'yinchisi "A" tugmachasini bosmasdan, "B" tugmachasini bosish orqali "Nolinchi taxmin" ni yuborishi mumkin!
- Agar bunga ruxsat berilsa, o'yinchi o'ynash uchun hech qanday kuch sarflamaydi va buning ma'nosi yo'q!
- Shuning uchun, bu cheklov 2 -o'q bilan qoplandi. yuqorida muhokama qilingan
9 -qadam: yutish/yo'qotish va qolgan funktsiyalar
Bu funktsiyalarning hammasi B tugmasi tomonidan "bosish" hodisasi ishlovchisi tomonidan oldingi bosqichda ko'rsatilganidek chaqiriladi.
Bu funktsiyalar juda aniq va shu vaqtga kelib siz to'g'ri nomlangan o'zgaruvchilar va Bloklar muharririning vizual atributlari kombinatsiyasi natijasida yaratilgan kodning intuitiv va tushunarli tabiati bilan tanishishingiz kerak.
- ShowWin () funktsiyasi o'yinchi ushbu turda g'olib bo'lganligini ko'rsatuvchi xabarni ko'rsatadi va PLAYER_SCORE o'zgaruvchisini 1 ga oshiradi.
- Xuddi shunday, showLose () funktsiyasi o'yinchi noto'g'ri taxmin qilganini ko'rsatadi va BIT_SCORE o'zgaruvchisini 1 ga ko'paytirish orqali BITga ball beradi.
- ShowBadGuess () funktsiyasi ekranda katta X ni ko'rsatadi, bu shuni ko'rsatadiki, o'yinchilardan biri yomon taxmin qilgan (0 yoki 6 dan katta) - bu holatda yomon o'yinchi ochko yo'qotadi, ikkinchisi esa ochko to'playdi!
Va nihoyat, announceWinner () funktsiyasi 3 turdan iborat bo'lgan javob/javobdan so'ng katta g'olib kimligini e'lon qilish vazifasini bajaradi:
- PLAYER_SCORE va BIT_SCORE ball o'zgaruvchilarini qayta o'rnatish
- Qisqa vaqt pauza qiling va ushbu IBLE -ning oldingi bosqichida (6) muhokama qilingan showMessage () ishga tushirish funktsiyasini chaqirib, yangi o'yinni boshlang.
Nihoyat, simulyator va kodga o'ting!
10 -qadam: Simulyator va kod
Kod bu erda joylashgan onlayn simulyatorda ishlaydi
- Simulyator sahifaning chap pastki qismida joylashgan
- Shu bilan bir qatorda, agar sizda BBC Microbit qulay bo'lsa, kodni yuklab olish uchun Yuklab olish tugmasidan foydalanish mumkin
- IBLE boshida aytib o'tganimizdek, sizga BBC Microbit kodini Bloklar muharririda yaratish yoki kodingizni simulyatsiya qilish va tekshirish uchun kerak emas, lekin bu men kabi qiziquvchan odamlar uchun ishlamaydi!
Tahrirlash tugmasi haqida eslatma
- Agar siz kuzatgan bo'lsangiz, kod jamoat mulki hisoblanadi va uni tahrir qilishning yuqori o'ng burchagidagi tugmasi mavjud.
- Ammo men sizdan ushbu koddan nusxa ko'chirishingizni va uni sizning ehtiyojlaringizga mos ravishda o'zgartirishingizni so'rayman, shunda asl nusxasi IBLE manfaati uchun saqlanib qoladi.
Rahmat! Va baxtli kodlash !!!:-)
Tavsiya:
Arduino tekshirgichlari yordamida ko'p o'yinchi o'yinini qanday qilish kerak: 6 qadam
Qanday qilib Arduino kontrollerlari yordamida ko'p o'yinchi o'yinini yaratish mumkin: O'yin ishlab chiqaruvchilari qanday qilib butun dunyo bo'ylab odamlar o'ynashni yoqtiradigan ajoyib o'yinlarni yaratadilar, deb o'ylab ko'rganmisiz? Xo'sh, bugun men sizga Arduino kontroli tomonidan boshqariladigan kichik o'yinchi o'yini yaratish orqali sizga bu haqda kichik maslahat beraman
Oddiy taxmin qilish o'yini - Python + XBees + Arduino: 10 qadam
Oddiy taxmin qilish o'yini - Python + XBees + Arduino: O'yin qanday ishlaydi: Sizda "a" - "h" - & gt o'rtasidagi harfni taxmin qilishga 4 ta urinish bor. To'g'ri xatni toping: siz g'olibsiz! ?-> Noto'g'ri xatni taxmin qiling: O'yin tugadimi?-> "A" - "h" dan tashqari boshqa belgilarni o'ylab ko'ring: O'yin tugadimi? Sizning Arduino sizga ruxsat beradi
CPU nima, u nima qiladi va uni qanday tuzatish mumkin: 5 qadam
CPU nima, u nima qiladi va uni qanday tuzatish mumkin: Har kuni bu erda " CPU " yoki " Protsessor " Men bu protsessor nima ekanligini va nima qilishini ko'rib chiqaman, keyin protsessorning umumiy muammolarini va ularni qanday tuzatish kerakligini ko'rib chiqaman
Microbit o'yinini qanday qilish kerak: 25 qadam
Microbit o'yinini qanday qilish kerak: Salom, mening ismim Muhammad va men sizga ko'rsatma beraman, blok -muharrir yordamida o'yinni bosqichma -bosqich qanday kodlash kerakligini ko'rsataman, o'yin Tetrisga o'xshaydi
Arduino yordamida oddiy ishlov berish o'yinini qanday boshqarish mumkin: 6 qadam
Arduino yordamida oddiy ishlov berish o'yinini qanday boshqarish mumkin: Salom, bu yo'riqnomada biz " havola " ishlov berish eskizi va Arduino kartasi o'rtasida. Bu misolda oddiy o'yinda samolyotni boshqarish uchun ultratovushli modul ishlatiladi. Shunga qaramay, bu darslik faqat misol