Mundarija:

Bit nima deb o'ylaydi? BBC Microbit yordamida oddiy taxmin qilish o'yinini qiling!: 10 qadam
Bit nima deb o'ylaydi? BBC Microbit yordamida oddiy taxmin qilish o'yinini qiling!: 10 qadam

Video: Bit nima deb o'ylaydi? BBC Microbit yordamida oddiy taxmin qilish o'yinini qiling!: 10 qadam

Video: Bit nima deb o'ylaydi? BBC Microbit yordamida oddiy taxmin qilish o'yinini qiling!: 10 qadam
Video: Konsta - Bilmaydi (Offical Music Video) 2024, Iyul
Anonim
Bit nima deb o'ylaydi? BBC Microbit bilan oddiy taxmin qilish o'yinini yarating!
Bit nima deb o'ylaydi? BBC Microbit bilan oddiy taxmin qilish o'yinini yarating!

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 …

Ishni boshlashdan oldin…
Ishni boshlashdan oldin…
Ishni boshlashdan oldin…
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'ylash qoidalari
O'ylash qoidalari

O'yin qoidalari quyidagicha:

  1. 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.
  2. 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.
  3. Javobni BITga yuborish uchun o'yinchi o'ng bosish tugmachasini (B) bir marta bosadi!
  4. Agar o'yinchi to'g'ri taxmin qilsa, o'yinchi ochko oladi, agar bo'lmasa, BIT ochko oladi
  5. 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.
  6. 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

Bloklar dasturi: o'zgaruvchilar
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

Funktsiyalar
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

Dasturni ishga tushirish va silkinish hodisalari va hodisalarni boshqaruvchilari
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:

  1. BIT ishga tushirilganda, "ishga tushirish" voqea boshqaruvchisi ishlaydi, masalan, BIT quvvatini uzish va qayta ulashda.
  2. Dastur ishga tushganda bir marta sodir bo'lishi kerak bo'lgan ba'zi narsalar "ishga tushganda" va boshqa dasturning boshqa joylarida aniqlanmagan.
  3. GAME_RANGE o'zgaruvchisini ishga tushirish - bu 6 ga boshlangan, ya'ni o'yinchilar 1 dan 6 gacha raqamni taxmin qilishlari mumkin.
  4. "Ishga tushirish" asosiy BIT funktsiyasi bo'lgani uchun, unga Bloklar muharririning asosiy dasturlash yorlig'idan kirish ajablanarli emas.
  5. Boshqa tomondan, "tebranishda" - bu voqea ishlovchisi, u har safar foydalanuvchi BIT -ga tez silkitish shaklida kirishni taqdim qilganda chaqiriladi.
  6. Shunday qilib, "tebranishda" voqea ishlovchilarini Bloklar muharririning Kirish dasturlash yorlig'ida topish mumkin

6 -qadam: ishga tushirish xabari va vazifalari

Ishga tushirish xabari va vazifalari
Ishga tushirish xabari va vazifalari
Ishga tushirish xabari va vazifalari
Ishga tushirish xabari va vazifalari
Ishga tushirish xabari va vazifalari
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:

  1. Inson o'yinchisidan yangi kirishni qabul qilishdan oldin playerGuess o'zgaruvchisini nolga o'rnatadi
  2. CHECK o'zgaruvchisini yolg'on holatga keltiradi - demak, raund boshlanadi va ikkala o'yinchi taxmin qilgan raqamlarni solishtirish vaqti kelmagan.
  3. Keyingi va eng asosiysi, BIT tasodifiy sonni GAME_RANGE tomonidan belgilangan diapazonda tanlaydi va uni bitGuessed o'zgaruvchisiga yozadi.
  4. 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

Tugmani bosish hodisasi - BITs chaqirig'iga javob bering!
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:

  1. BIT 0 dan 6 gacha qanday raqamni o'ylab topishini taxmin qiling
  2. 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

B tugmachasini bosish tadbiri - BITs chaqiruviga javob yuboring!
B tugmachasini bosish tadbiri - BITs chaqiruviga javob yuboring!
B tugmachasini bosish tadbiri - BITs chaqiruviga javob yuboring!
B tugmachasini bosish tadbiri - 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:

  1. CHECK bayrog'i "True" ga o'rnatiladi - bu BITning taxminini o'yinchilar bilan solishtirish uchun signal
  2. 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!
  3. Agar o'yinchilar BITlarnikiga mos kelsa, showWin () funktsiyasi chaqiriladi - o'yinchi bu turda g'alaba qozonadi!
  4. Agar yo'q bo'lsa, showLose () funktsiyasi chaqiriladi - BIT bu turda g'olib chiqadi!
  5. 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
  6. 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

Yutish/yo'qotish va qolgan funktsiyalar
Yutish/yo'qotish va qolgan funktsiyalar
Yutish/yo'qotish va qolgan funktsiyalar
Yutish/yo'qotish va qolgan funktsiyalar
Yutish/yo'qotish va qolgan funktsiyalar
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.

  1. ShowWin () funktsiyasi o'yinchi ushbu turda g'olib bo'lganligini ko'rsatuvchi xabarni ko'rsatadi va PLAYER_SCORE o'zgaruvchisini 1 ga oshiradi.
  2. 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.
  3. 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

Simulyator va kod
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: