programmeren

in python

Jaar 2 - Module 1 - Les 6: While lus verbeteren,

plan maken

vandaag gaan we leren

 

  • Duidelijk opschrijven wat je plan is

  • De while lus verbeteren

Met PyGame kunnen we een user interface maken.

thema jaar 2: Pygame

Met PyGame kunnen we een user interface maken​.

 

In een user interface ziet de gebruiker wat hij moet doen, en hoe hij dat moet doen.

 

thema jaar 2: Pygame

Met PyGame kunnen we een user interface maken​.

 

In een user interface ziet de gebruiker wat hij moet doen, en hoe hij dat moet doen.

thema jaar 2: Pygame

Soms moet je bij het programmeren plannen en fouten oplossen.

Met PyGame kunnen we een user interface maken​.

 

In een user interface ziet de gebruiker wat hij moet doen, en hoe hij dat moet doen.

thema jaar 2: Pygame

Soms moet je bij het programmeren plannen en fouten oplossen.

Dat gaan we vandaag oefenen!

Soms doet code niet helemaal wat jouw bedoeling was.

plannen

Soms doet code niet helemaal wat jouw bedoeling was.

Dat is helemaal niet erg, sterker nog, dat gebeurt heel vaak!

plannen

Soms doet code niet helemaal wat jouw bedoeling was.

Dat is helemaal niet erg, sterker nog, dat gebeurt heel vaak!

 

Wat heel belangrijk is, is dat je een goed plan hebt voor wat je code moet doen. Dat helpt bij het oplossen van fouten.

plannen

Soms doet code niet helemaal wat jouw bedoeling was.

Dat is helemaal niet erg, sterker nog, dat gebeurt heel vaak!

 

Wat heel belangrijk is, is dat je een goed plan hebt voor wat je code moet doen. Dat helpt bij het oplossen van fouten.

 

We kijken samen even naar de code van vorige week.

plannen

Soms doet code niet helemaal wat jouw bedoeling was.

Dat is helemaal niet erg, sterker nog, dat gebeurt heel vaak!

 

Wat heel belangrijk is, is dat je een goed plan hebt voor wat je code moet doen. Dat helpt bij het oplossen van fouten.

 

We kijken samen even naar de code van vorige week.

Wat is er allemaal niet goed? Denk er samen over na.

plannen

demo

Welke dingen zijn er nog niet helemaal goed aan deze code?

plannen

Welke dingen zijn er nog niet helemaal goed aan deze code?

 

Wat zien jullie allemaal?

plannen

Welke dingen zijn er nog niet helemaal goed aan deze code?

 

Hadden jullie deze dingen gezien?

  • Als er niet geklikt is "Helaas, geen is niet goed" in beeld

  • Het gekozen antwoord blijft in beeld geprint worden

  • Je moet vaak klikken om een antwoord te krijgen

  • Het duurt even voor je weer mag klikken

plannen

Het kan verleidelijk zijn om meteen in de code te duiken.

plannen

Het kan verleidelijk zijn om meteen in de code te duiken.

Maar, het is slimmer om eerst even te denken!

plannen

Het kan verleidelijk zijn om meteen in de code te duiken.

Maar, het is slimmer om eerst even te denken!


Denk eens goed na... Hoe zou het programma moeten werken?

plannen

Het kan verleidelijk zijn om meteen in de code te duiken.

Maar, het is slimmer om eerst even te denken!


Denk eens goed na... Hoe zou het programma moeten werken?

Schrijf dat op voor je aan de slag gaat.

plannen

Requirements

Met een moeilijk woord heet een plan voor code een requirement. Dat betekent wat de code moet doen.

Requirements

Met een moeilijk woord heet een plan voor code een requirement. Dat betekent wat de code moet doen.

 

Dit jaar ga je ook voor een klant aan de slag.

Requirements

Met een moeilijk woord heet een plan voor code een requirement. Dat betekent wat de code moet doen.

 

Dit jaar ga je ook voor een klant aan de slag. Dan maak je zelf ook requirements.

Requirements

Met een moeilijk woord heet een plan voor code een requirement. Dat betekent wat de code moet doen.

 

Deze requirements gelden voor onze code:

Requirements

Met een moeilijk woord heet een plan voor code een requirement. Dat betekent wat de code moet doen.

 

Deze requirements gelden voor onze code:

  • Als er geklikt is, moet de geklikte letter in beeld komen

Requirements

Met een moeilijk woord heet een plan voor code een requirement. Dat betekent wat de code moet doen.

 

Deze requirements gelden voor onze code:

  • Als er geklikt is, moet de geklikte letter in beeld komen
  • De geklikte letter moet maar 1 keer in beeld komen

Requirements

Met een moeilijk woord heet een plan voor code een requirement. Dat betekent wat de code moet doen.

 

Deze requirements gelden voor onze code:

  • Als er geklikt is, moet de geklikte letter in beeld komen
  • De geklikte letter moet maar 1 keer in beeld komen
  • Als er niet is geklikt, hoeft er niets in beeld te komen

Requirements

Requirements kunnen helpen om problemen op te lossen.

Requirements

Requirements kunnen helpen om problemen op te lossen.

Volg deze stappen als je een stukje code wilt controleren.

Requirements

Requirements kunnen helpen om problemen op te lossen.

Volg deze stappen als je een stukje code wilt controleren.

 

  1. Is alles al goed?
    • Ja -> Super!
    • Nee -> Ga naar stap 2
  2. Waar in de code zit het probleem?
  3. Wat moet er anders?
  4. Verander de code en ga naar stap 1.

Requirements

Voorbeeld voor deze requirement:

Als er geklikt is, moet de geklikte letter in beeld komen

Requirements

Voorbeeld voor deze requirement:

Als er geklikt is, moet de geklikte letter in beeld komen

 

  1. Is alles al goed?

Requirements

Voorbeeld voor deze requirement:

Als er geklikt is, moet de geklikte letter in beeld komen

 

  1. Is alles al goed? 

Requirements

Voorbeeld voor deze requirement:

Als er geklikt is, moet de geklikte letter in beeld komen

 

  1. Is alles al goed? Dus: komt de letter in beeld bij een klik?

Requirements

Voorbeeld voor deze requirement:

Als er geklikt is, moet de geklikte letter in beeld komen

 

  1. Is alles al goed? Dus: komt de letter in beeld bij een klik?

Requirements

Laten we even in de demo kijken!

demo

Voorbeeld voor deze requirement:

Als er geklikt is, moet de geklikte letter in beeld komen

 

  1. Is alles al goed? Dus: komt de letter in beeld bij een klik?
    • Ja of nee? Wat denken jullie?

Requirements

Voorbeeld voor deze requirement:

Als er geklikt is, moet de geklikte letter in beeld komen

 

  1. Is alles al goed? Dus: komt de letter in beeld bij een klik?
    • Ja of nee? Wat denken jullie?

Requirements

De letter komt in beeld! Dus dit is goed.

Voorbeeld voor de volgende requirement:

De geklikte letter moet maar 1 keer in beeld komen

Requirements

Voorbeeld voor de volgende requirement:

De geklikte letter moet maar 1 keer in beeld komen

 

  1. Is alles al goed? Dus: komt de letter 1x in beeld bij een klik?

Requirements

Voorbeeld voor de volgende requirement:

De geklikte letter moet maar 1 keer in beeld komen

 

  1. Is alles al goed? Dus: komt de letter 1x in beeld bij een klik?
    • Ja of nee? Wat denken jullie?

Requirements

Voorbeeld voor de volgende requirement:

De geklikte letter moet maar 1 keer in beeld komen

 

  1. Is alles al goed? Dus: komt de letter 1x in beeld bij een klik?
    • Ja of nee? Wat denken jullie?

Requirements

Laten we even in de demo kijken!

demo

Voorbeeld voor de volgende requirement:

De geklikte letter moet maar 1 keer in beeld komen

 

  1. Is alles al goed? Dus: komt de letter 1x in beeld bij een klik?
    • Ja of nee? Wat denken jullie?

Requirements

Voorbeeld voor de volgende requirement:

De geklikte letter moet maar 1 keer in beeld komen

 

  1. Is alles al goed? Dus: komt de letter 1x in beeld bij een klik?
    • Ja of nee? Wat denken jullie?

Requirements

De letter komt  vaker in beeld! Niet goed dus.

Voorbeeld voor de volgende requirement:

De geklikte letter moet maar 1 keer in beeld komen

 

  1. Is alles al goed?
  2. Waar in de code zit het probleem?
  3. Wat moet er anders?
  4. Verander de code en ga naar stap 1.

Requirements

Door naar stap 2!

De geklikte letter moet maar 1 keer in beeld komen.

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

  if antwoord == goede_antwoord:
    print('Goedzo!')
  else:
    print('Helaas,', antwoord, 'is niet goed')
    antwoord = 'geen' #reset het antwoord
    
  time.sleep(0.5) #even wachten op de volgende klik!

De geklikte letter moet maar 1 keer in beeld komen.

 

Waar zit de fout?

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

  if antwoord == goede_antwoord:
    print('Goedzo!')
  else:
    print('Helaas,', antwoord, 'is niet goed')
    antwoord = 'geen' #reset het antwoord
    
  time.sleep(0.5) #even wachten op de volgende klik!

De geklikte letter moet maar 1 keer in beeld komen.

 

Waar zit de fout?
Weet jij het al?

 

 

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

  if antwoord == goede_antwoord:
    print('Goedzo!')
  else:
    print('Helaas,', antwoord, 'is niet goed')
    antwoord = 'geen' #reset het antwoord
    
  time.sleep(0.5) #even wachten op de volgende klik!

De geklikte letter moet maar 1 keer in beeld komen.

 

Waar zit de fout?
Weet jij het al?

 

​Zo nee... denk dan na: Waar kijken we of er geklikt wordt?

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

  if antwoord == goede_antwoord:
    print('Goedzo!')
  else:
    print('Helaas,', antwoord, 'is niet goed')
    antwoord = 'geen' #reset het antwoord
    
  time.sleep(0.5) #even wachten op de volgende klik!

Hier kijken we of er geklikt is.

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

  if antwoord == goede_antwoord:
    print('Goedzo!')
  else:
    print('Helaas,', antwoord, 'is niet goed')
    antwoord = 'geen' #reset het antwoord
    
  time.sleep(0.5) #even wachten op de volgende klik!

Hier kijken we of er geklikt is.

 

Alleen als er geklikt is, moeten we de letter 1 x printen.

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

  if antwoord == goede_antwoord:
    print('Goedzo!')
  else:
    print('Helaas,', antwoord, 'is niet goed')
    antwoord = 'geen' #reset het antwoord
    
  time.sleep(0.5) #even wachten op de volgende klik!

Hier kijken we of er geklikt is.

 

Alleen als er geklikt is, moeten we de letter 1 x printen.

 

Printen moet dus in de if staan!

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

  if antwoord == goede_antwoord:
    print('Goedzo!')
  else:
    print('Helaas,', antwoord, 'is niet goed')
    antwoord = 'geen' #reset het antwoord
    
  time.sleep(0.5) #even wachten op de volgende klik!

Hier kijken we of er geklikt is.

 

Alleen als er geklikt is, moeten we de letter 1 x printen.

 

Printen moet dus in de if staan!

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

    if antwoord == goede_antwoord:
      print('Goedzo!')
    else:
      print('Helaas,', antwoord, 'is niet goed')
      antwoord = 'geen' #reset het antwoord

    time.sleep(0.5) #even wachten op de volgende klik!

demo

Zet deze code in de if en je krijgt een heel ander programma!

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

    if antwoord == goede_antwoord:
      print('Goedzo!')
    else:
      print('Helaas,', antwoord, 'is niet goed')
      antwoord = 'geen' #reset het antwoord

    time.sleep(0.5) #even wachten op de volgende klik!

Daarom is een plan maken belangrijk!

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

    if antwoord == goede_antwoord:
      print('Goedzo!')
    else:
      print('Helaas,', antwoord, 'is niet goed')
      antwoord = 'geen' #reset het antwoord

    time.sleep(0.5) #even wachten op de volgende klik!

Daarom is een plan maken belangrijk!

 

Kleine aanpassingen maken code al anders.

Requirements

# hier hoort code om pygame aan te zetten
# het veld op de juiste grootte te zetten
# en alle letters in te laden

while True:
  #... Hier hoort code om alle elementen zoals tekst 
  # en letters A en B in beeld te krijgen met blit

  if knoppen[0] == 1:
    if A_rechthoek.collidepoint(locatie_muis):
      antwoord = 'A'
    if B_rechthoek.collidepoint(locatie_muis):
      antwoord = 'B'
    if C_rechthoek.collidepoint(locatie_muis):
      antwoord = 'C'
    if D_rechthoek.collidepoint(locatie_muis):
      antwoord = 'D'

    if antwoord == goede_antwoord:
      print('Goedzo!')
    else:
      print('Helaas,', antwoord, 'is niet goed')
      antwoord = 'geen' #reset het antwoord

    time.sleep(0.5) #even wachten op de volgende klik!

Requirements

Nu ga jij zelf aan de slag met de code.

 

Pak jouw code van vorige les en verbeter deze zelf.

Zorg dat deze requirements gelden, en volg de 4 stappen.

 

  • Als er geklikt is, moet de geklikte letter in beeld komen
  • De geklikte letter moet maar 1 keer in beeld komen
  • Je mag niet twee keer achter elkaar op dezelfde letter klikken!

Requirements

Nu ga jij zelf aan de slag met de code.

 

Pak jouw code van vorige les en verbeter deze zelf.

Zorg dat deze requirements gelden, en volg de 4 stappen.

 

  • Als er geklikt is, moet de geklikte letter in beeld komen
  • De geklikte letter moet maar 1 keer in beeld komen
  • Je mag niet twee keer achter elkaar op dezelfde letter klikken!

Nieuw!

zodadelijk op de computer...

opdrachten deel b

opdrachten deel b

opdrachten deel b

opdrachten deel b

Python Klas 2 - Module 1 - Les 6

By Felienne

Python Klas 2 - Module 1 - Les 6

Leerdoel Module: PyGame gebruiken Lesdoel: Plan maken, fouten oplossen

  • 1,038