Perusidea
| Oppilaiden yhteistyönä luodaan peli. Tämän skenaarion päätavoitteena on, että opiskelijat ymmärtävät GUI-pelin luomisprosessin. |
| Tekijä | Rallis Spiros |
| Oppiaine | Tietojenkäsittelytiede |
| Pituus | 45 minuuttia |
| Pedagoginen lähestymistapa | Teknologia-avusteinen oppiminen. |
| Kompetenssit | Ohjelmointi Pythonilla ja käyttäjäystävällisen käyttöliittymän omaavan sovelluspelin luominen Osaaminen • ongelman tunnistaminen • algoritmit • abstraktio • hajoaminen |
| Ikäryhmä | Peruskoulu, 4.-5. luokka |
| Teknologiat | Python -Tkinter-käyttöliittymä |
| Arviointi | Oppilaat ajavat ohjelman tunnin lopussa ja opettajat arvioivat heidät. Tavoitteena on myös, että oppilaat arvioivat toisiaan. |
Ensiksi selitämme opiskelijoille, mikä on käyttäjäystävällinen käyttöliittymä. Sen jälkeen yritämme piirtää käyttöliittymän taululle tai tietokoneelle Paint-ohjelmalla oppilaiden avustuksella. Lisäksi esittelemme heille Tkinterin (Python) perustyökalut ja autamme heitä aloittamaan ohjelmoinnin. Meidän pitäisi myös auttaa heitä luomaan toiminto, joka on välttämätön sen käyttämiseksi painikkeiden kanssa.
Yleisesti ottaen oppilaiden tulisi ymmärtää, miten Random Function -funktiota käytetään, jotta pelin alussa saadaan aina kokonaislukuja. Yhtä tärkeää on selvittää, mitä tehdä painikkeilla joka kerta, kun he yrittävät arvata numeron (Jokaisella pelaajalla on 3 yritystä).
Istunnon päätteeksi luokassa käydään keskustelu.
1.Voimmeko käyttää samaa koodia (pienin eroin) toisen pelin luomiseen?
2.Onko mahdollista käyttää ajastinta?
3.Voimmeko parantaa peliä, jos pelaaja tietää, kuinka kaukana tai lähellä hänen arvaamansa numero on tietokoneen valinnasta?
(kesto: 2-3 tuntia)
Tehtävämoniste:
Ennen kuin aloitamme, meidän on tiedettävä, että tämän sovelluksen rakentamiseksi tarvitsemme joitakin kiinteitä komentoja ohjelman alussa ja vastaavasti joitakin ohjelman lopussa.

Alussa:
import tkinter as tk
tuonti random
maailmanlaajuinen numero
ikkuna = tk.Tk()
window.title(“Arvaa numero”)
window.geometry(“300×300”)
Lopussa:
tk.mainloop()
1. Sovelluksessamme pitäisi olla tekstikenttä, johon kirjoitamme numeron.
2. Jopa RANDOM-toiminnolla tietokone valitsee satunnaisluvun, joka meidän on löydettävä kolmella yrityksellä.
3. Siinä pitäisi olla 3 painiketta, jotta jokainen painike on yhtä yritystä varten. Kullekin painikkeelle on myös oltava funktio, jota kutsutaan joka kerta painikkeen luomisen aikana.
printButton1 = tk.Button(window,text = “TRY_1”, command = printInput1) Toiminnon pitäisi näyttää tältä →
def printInput1():
global printButton1
inp = inputtxt.get(1.0, “end”)
……………………………….. –> Tässä kohtaa sinun on mietittävä, mitä komentoja laitat, jotta tekstikenttään kirjoittamaasi numeroa voidaan verrata siihen numeroon, jonka tietokone valitsi alussa.
4. Sinun täytyy vielä miettiä, mitä vertailuja teet, jotta jokaisella yrityksellä se näyttää meille, onko valitsemamme luku suurempi vai pienempi kuin arvattava luku.
5. Jotta painikkeet, tarrat ja tekstilaatikko tulevat näkyviin, meidän on annettava painikkeen nimi tällä komennolla printButton1.pack (). Sama koskee etikettiä ja tekstilaatikkoa.
lbl1 = tk.Label(window, text = “”)
lbl1.pack()
inputtxt = tk.Text(window, height = 1, width = 10)
inputtxt.pack()
