8. óra: Rádió használata
A mai órán a micro:bit rádióadó-vevõ képességével dolgozunk. Álljanak párokba, és ketten készítsék el az alábbi programokat! (Ügyeljenek arra, hogy a két micro:bit-jük ugyanazt az egyedi rádiócsoport-ot használja - amit senki más nem.)Elõkészületek
0. lépés: indítsa el a böngészõt, és lépjen be a programozó felületre (jobb egér, megnyitás új lapon):
https://makecode.microbit.org/#
Hozzon létre egy új projektet szamjatek néven!
A következõ kép fogad minket:
radioado.hexI. Számjáték
Feladat: Készítsünk programot, amely két micro:bit-tel dolgozik. Két játékos játszik egymással.
A játék leírása: Kezdetben mindkét micro:bit-en
megjelenik a 9 szám - ez a játék értéke. A két játékos felváltva nyomhat
'A'-t, 'B'-t vagy 'A+B'-t.
Elõször az nyom, aki gyorsabb, de utána csak akkor érvényes a
gombnyomás, ha elõtte a másik már választott. Tehát hol az egyik, hol a
másik játékos nyomhat gombot, de kétszer egymás után senki.
Ha a soron következõ játékos...
... az 'A' gombot nyomja, akkor a játék értéke 1-gyel csökken;
... az 'B' gombot nyomja, akkor a játék értéke 2-vel csökken;
... az 'A+B' gombot nyomja, akkor a játék értéke 3-mel csökken.
Lépéskényszer van, tehát akin a sor, az kell nyomjon valamit.
Az nyer, aki el tudja érni a 0-t.
Egy példa játékmenet:
A jákék (kezdõ)értéke: 9. Ez mindkét
micro:bit-en megjelenik.
- egyik játékos: 'A' (-1)
A játék értéke: 8. (Ez mindkét micro:bit-en látszik).
- másik játékos: 'A+B' (-3)
A játék értéke: 5.
- egyik játékos: 'B' (-2)
A játék értéke: 3.
- másik játékos: 'A+B' (-3)
A játék értéke: 0 \(\Longrightarrow\) a 'másik'
játékos nyert!
1. lépés: Állítsa be az 'indításkor' blokkban a
rádiócsoportot (egyedilgeg, párban!), valamint két változót:
- a kijon változó azt rögzíti,
hogy ön jön, vagy a másik testvét. 0: ha ön jön, 1: ha nem.
- a szam változóa játék értékét
tárolja.
2. lépés: Most figyelni fogjuk a gombnyomásokat, és ha az megtörténik, akkor...
... meg kell vizsgálni, hogy ön jön-e (kijon = 0) - ha nem, akkor nincs teendõ;
... ha ön jön, akkor...
... a kijon
értéke 1-re állítandó (már nem ön jön);
... a szam a
megfelelõ értékkel csökkentendõ (A:-1, B:-2, A+B:-3)
... a szam
változót az új értékkel el kell küldenünk.
3. lépés: Gondoskodjunk a vételrõl!
Ha adás érkezik, akkor...
... megvizsgáljuk, hogy tényleg a másik jön-e (kijon = 1, vagy most indul: szam = 9) - ha nem, akkor nincs teendõ;
... ha tényleg a másik játékos jön, akkor...
... az érkezett szám elmentendõ a szam
nevû változóba;
... a kijon
értéke 0-ra állítandó (már megint ön jön);
3. lépés: Gondoskodjunk az egész megjelenítésérõl - ez az állandóan blokk feladata.
A teendõk:
Mindenekelõtt észlelnünk kell, ha a játék véget ért, ha nem akkor csak
kiírjuk a számot, ha igen, akkor sírunk, vagy nevetünk.
(A játék végét a szam értéke
alapján vesszük észre, de a kijon
változó is fontos, ha az 0, v. 1, akkor tudjuk ki nyert, ha az 2, akkor
semmi dolgunk.)
Ha a szam értéke 0, vagy negatív
(túltolta a másik játékos), akkor kiírjuk, hogy 0, és...
... ha a kijon változó értéke 0
(ön jönne) akkor ön vesztett \(\Rightarrow\) szomorúság;
... ha a kijon változó értéke 1 (a
másik jön) akkor ön nyert \(\Rightarrow\) mosoly;
... akármi az eredmény, már nem jön senki: kijon
= 2.
Különben, ha a szam értéke
pozitív, akkor csak egyszerûen kiírjuk a szam-ot.
Kész programjukat töltsék rá a micro:bit-re, próbálják ki, és ha jó, mutassák meg!
Jó munkát!