På denne blokdag skal I arbejde med programmering.
Til løsning af opgaverne skal I bruge de metoder og begreber, I har lært i lektion 1-5 i dette forløb.
Det kan være, at I undervejs i arbejdet bliver nødt til at gå tilbage til de tidligere lektioner for at få repeteret metoderne, I skal benytte.
HUSK at der til hver opgave kan være mange forskellige løsninger!
Hver opgave skal afleveres efter nærmere aftale med jeres lærer!
Som aflevering bliver I bedt om at dele et link med jeres lærer.
I deler ved at klikke på 'Del' som vist på billedet.
Hvis I ikke kan se 'Del' i Scratch, så skal I fjerne/deaktivere adblocker på jeres Scratch side.
Det kan også være, at I ikke har bekræftet jeres e-mail i Scratch?
Tjek at det virker inden I løser opgaverne.
Opgaverne skal løses i grupper.
Der må maksimalt være 4 medlemmer i hver gruppe!
Det er vigtigt at I læser alle opgaver meget grundigt, så I får svaret på alle relevante spørgsmål I jeres løsning.
I arbejder udelukkende i Scratch i dag og løser derfor også kun opgaverne i Scratch.
Først skal I oprette et rutediagram for en simpel lommeregner, der kan udføre addition, subtraktion, multiplikation og division.
Programmet skal tage to tal som brugerinput og udføre den valgte operation.
Programmet skal udskrive resultatet af beregningen.
Når I har lavet rutediagrammet skal I programme koden i Scratch.
Hint: Brug "input" blokke til at modtage brugerinput og "Hvis - så" blokke til at afgøre hvilken operation der skal udføres.
Husk at opgaven kan løses på mange forskellige måder.
Når I har løst opgaven, skal I teste om programmet virker efter hensigten.
Regner det rigtigt?
I kan også overveje om I giver gode/relevante informationer til brugeren?
Det vil sige: Har I tænkt over interaktionsdesignet?
Opgaven er løst, når I har opfyldt kriterierne ovenfor og ikke mener, at I kan tilføje mere til programmet.
I skal lave et program, der finder og udskriver alle tal mellem 1 og 100. Hvis tallene er delelige med 100, så skal programmet gøre noget bestem.
Hvis et tal er deleligt med 3, så skal programmet i stedet for f.eks. 3 eller 6 skrive: *.
Hvis et tal er deleligt med 5, så skal programmet i stedet for f.eks. 5 eller 10 skrive: o.
Hvis et tal er deleligt med 3 OG 5, så skal programmet i stedet for f.eks. 15 eller 30 skrive: X.
Det vil sige, at en udskrift fra programmet skal se således ud:
1, 2, *, 4, o, *, 7, 8, *, o, 11, *, 13, 14, X,.... (I kan se et eksempel på programmet nedenfor).
Programmet skal benytte "modulo" operatoren til at afgøre, om et tal opfylder kravene.
Modulo finder I under 'Operatorer'. Modulo returnerer det, der er tilbage efter en division.
F.eks. er 8 modulo 3 = 2, fordi 3 går 2 gange op i 8. 3x2 = 6, så resten er 8-6.
9 modulo 3 = 0, fordi 3 går 3 gange op i 9. Og 3x3 = 9, så resten er 9-9.
Prøv at teste funktionen i Scratch.
Programmet skal benytte forgreninger (Hvis-så blokke) til at kontrollere og udskrive de relevante tal.
Alle værdierne skal gemmes i en liste, så I bagefter kan se om programmet fungerer.
Se evt. eksemplet nedenfor, hvor programmet kan afvikles.
Hint: Brug "modulo" blokken til at finde resten ved division og "Hvis-så" blokke til at afgøre, om tallet skal udskrives eller ej.
Husk at opgaven kan løses på mange forskellige måder.
Når I har løst opgaven, skal I teste om programmet virker efter hensigten.
Regner det rigtigt?
Opgaven er løst, når I har opfyldt kriterierne ovenfor og ikke mener, at I kan tilføje mere til programmet.
Læs HELE opgaven inden I starter!!!
I denne opgave skal I arbejde videre på et spil.
Vi kalder spillet "Pongspil" - I må meget gerne i jeres løsning komme med et forslag til et bedre navn!
(Læs opgaven under spillet. Her kan I også hente koden til spillet).
I kan afprøve spillet her:
Brug musen til at flytte den grønne 'paddle'.
(Opgaven fortsætter under spillet!!!)
Når I har hentet koden, så kan I ændre den efter behov.
Det er nu jeres opgave at arbejde videre på dette spil, så det bliver rigtig godt.
Det er helt op til jer, hvilke ændringer I ønsker at lave.
Listen nedenfor er blot ideer og forslag.
I kan helt sikkert komme på nogle endnu bedre forslag.
Forslag til forbedringer:
Ændre boldens udformning
Giv point, når bolden rammer den grønne 'paddle'
Træk point fra, når bolden rammer den røde bund.
Tilføj musik, når spillet startes
Tilføj en bold mere, når brugeren fx når 100 point
Øg boldens fart, når den har ramt den grønne 'paddle'.
Krav til løsning af Opgave3:
Lav mindst 3-4 justeringer/ændringer i spillet.
Kopier koden fra jeres nye program.
Sæt koden ind i et dokument.
Skriv hvilke ændringer I har lavet, hvorfor I har lavet dem og hvordan I har gjort.
Angiv hvilke kontrolstrukturer I har brugt og hvad I har brugt dem til.
Aflever dokumentet på Lectio til jeres lærer.
Læs HELE opgaven inden I starter!!!
I denne opgave skal I lave et program, hvor brugeren skal gætte et tal som programmet selv finder på (Brug "vælg tilfældigt tal mellem _ og _". Den blok finder I under operatorer).
Programmet skal generere et tal mellem 1-100.
Brugeren skal gætte tallet på færrest mulige forsøg.
Efter hvert gæt får brugeren svaret 'For højt', hvis gættet er for højt eller 'For lavt', hvis gættet er lavere end det tal, der skal gættes på.
Når brugeren gætter tallet ønskes 'Tillykke' og programmet oplyser, hvor mange gæt brugeren har benyttet.
Programmet skal:
Bede brugeren om at gætte på et tal mellem 1-100 som programmet tilfældigt har dannet.
Brugeren skal have besked, om gættet er for højt, for lavt eller rigtigt.
Når tallet er gættet skal bruge have besked om, hvor mange gæt, der er brugt.
I kan se et eksempel på et program, der kan dette nedenfor.
Krav til løsning af Opgave4:
Lav et spil, der genererer (danner) et tilfældigt tal mellem 1-100
Bed brugeren om at gætte på et tal
Giv besked om gættet er for højt eller for lavt
Sig 'Tillykke', når tallet er gættet.
Spørg om brugeren ønsker at fortsætte
Hertil skal I tilføje nogle ændringer. Sæt jer sammen og udtænk nogle gode ændringer.
I kan f.eks. lade nogle teste spillet, så kan det være, at I får nogle gode ideer.
Ideer til ændringer kan f.eks. være:
Brugeren bestemmer selv intervallet af mulige tal, der gættes på (fx mellem 1-1.000)
Der gives point efter, hvor hurtigt tallet gættes.
I laver en high-score liste, der ikke nulstilles, når programmet er slut.
Programmet giver bruger hjælp til, hvilket tal, der skal gættes på.
Når programmet fungerer optimalt, så skal I indspille en video på 5 minutter, hvor I meget tydeligt:
Forklarer, hvordan programmet fungerer.
Forklarer brugen af kontrolstrukturer (sekvenser, løkker og forgreninger).
Forklarer brugen af variabler og lister. Herunder forklarer, hvad en variabel er og hvad en liste er.
Beskriver hvordan I har tænkt på Interaktionsdesignet.
Fortæller, hvis der var noget I gerne ville have gjort anderledes, og hvordan I tror I kunne have gjort det.
I starten af videoen skal I alle præsenterer jer, så vi kan se, hvem der er med i projektet.
Eksempel på "Gæt et tal"-program: