NAT wk7+8 / H3 / Control-structures (mr41)

Control-structures
Programmeren basis-II
H3 / week 7 en 8
1 / 36
volgende
Slide 1: Tekstslide
Applicatie- en mediaontwikkelaarMBOStudiejaar 1

In deze les zitten 36 slides, met interactieve quizzen en tekstslides.

Onderdelen in deze les

Control-structures
Programmeren basis-II
H3 / week 7 en 8

Slide 1 - Tekstslide

Deze LessonUp is voor heel H3
Programma week 7 en 8
  • Weekcheck H2 ('pilot intercom')
  • Loops in Python
  • Loops en input
  • Weekcheck H3 ('pilotenlijst')
  • Feedbackmoment donderdag

Slide 2 - Tekstslide

Deze slide heeft geen instructies

Herhaling: datatypes
In een variabele zit een bepaald soort waarde:






Tekst
string
"Hallo Curio"
Getal (heel)
integer
10
Getal (komma)
floating point
5.12
True/false
boolean
True

Slide 3 - Tekstslide

Deze slide heeft geen instructies


A
String
B
Integer
C
Float
D
Boolean

Slide 4 - Quizvraag

Deze slide heeft geen instructies


A
String
B
Integer
C
Float
D
Boolean

Slide 5 - Quizvraag

Deze slide heeft geen instructies


timer
2:00

Slide 6 - Open vraag

Deze slide heeft geen instructies


timer
2:00

Slide 7 - Open vraag

Deze slide heeft geen instructies

Dit programma geeft
een foutmelding,
waarom? Denk aan
de datatypes.

Slide 8 - Open vraag

Deze slide heeft geen instructies

Weekcheck H2 - Wat viel er op?
==> Goed de opdracht lezen <==

Let op het gebruik van variabele namen en conventie. 
    camelCase
    Geeft de naam weer welke waarde wordt opgeslagen.
    Engels heeft de voorkeur maar zeker geen Engels en Nederlands door elkaar.

Let op vraagstelling want dit krijgt de klant te zien. De vraag moet duidelijk zijn.

Let op of aan alle eisen is voldaan.
    Belangrijk dit zijn de eisen van de klant.
    Niet zelf iets bedenken en/of weglaten.

Juiste verwerking van de ja/nee vragen, zie volgende sheet

Slide 9 - Tekstslide

Geef een aantal algemene tips, die je na het nakijken zijn opgevallen.
Weekcheck H2 (1AB)

Slide 10 - Tekstslide

Voorbeeld zoals in het boekje, waarom daar van afwijken?
Weekcheck H2
     Code review: het lezen van andermans code.
     Eisen aan de opdracht: klik op het vraagteken

Wissel de link naar jouw REPL-programma uit met een mede-student. Review de ontvangen code. Schrijf je
tips / tops op, en leg die later ook uit.
Je let op:
  • Netheid van de code
  • Mogelijke logische fouten (‘denkfouten’)
  • Of het programma voldoet aan de gestelde eisen
"Good evening Ladies & gentlemen. This is Fedde van Gils, your captain for this flight. Here is some information about the flight progress. Our B737 is presently climbing through 21,000 feet en route to our cruising altitude of 33,000 feet so we expect a climb of 8000* feet. We are expecting a [smooth ride || bumpy ride] and our flight plan shows an en route time of two hours and 30 minutes. We expect to arrive in London at 2030 Local time. Our route today will take us over the Swiss Alps, visible on the left-hand side of the aircraft. The en route weather is clear skies, [which will give us a chance to point out some specific landmarks || so we will not get to see much of the specific landmarks]. The London weather is partly cloudy skies and about 10 degrees Celsius. Enjoy your flight." 

* het getal bij de "expected climb" moet niet worden ingevoerd, maar uitgerekend!
timer
20:00

Slide 11 - Tekstslide

Deze slide heeft geen instructies

Control-structures
Hiermee 'bestuur' je je
programma; zal code wel
of niet worden uitgevoerd,
of worden herhaald, etc.
if / elif / else
for-loop
while
etc..

Slide 12 - Tekstslide

Deze slide heeft geen instructies

Elif - dit is een afkorting van "else if".
Indentation - regel 9 valt in de scope van de elif daarboven. Daarom staat de regel een stukje naar rechts.

De elif staat in zijn geheel ook naar rechts omdat hij in de scope valt van van de for-loop op regel 1.
Colon - de dubbele punt (Engels: colon) komt aan het einde van een for, while of if-statement. Daarna komen de regels die in de scope van deze regel horen.
Indentation - deze regel is 'ingesprongen' omdat 'ie hoort bij de scope van de if-statement. Dat inspringen noem je 'indentation', het bestaat uit één TAB of vier spaties.
Regels van control-structures

Slide 13 - Tekstslide

Voor alle control-structures geldt: dubbele punt + indentation
Lists in python
firstList = ["", "", ""]
Lists in python
Typ de onderstaande code in en bekijk het resultaat
firstList = ["cat", "dog", "fish"]
secondList = ["abc", 34, True, 40.7]

print(firstList)
print(len(firstList))
print(secondList)
print(secondList[3])

Slide 14 - Tekstslide

Deze slide heeft geen instructies

Control-structures: loops

Slide 15 - Tekstslide

Deze slide heeft geen instructies

Control-structures: loops

Slide 16 - Tekstslide

Deze slide heeft geen instructies

Control-structures: loops

Slide 17 - Tekstslide

Deze slide heeft geen instructies

Lezen en maken: H3, paragraaf 4 + 5.
Inleveren: plak alle code in LessonUp, van 5.1 t/m 5.4

Klaar? Verder vanaf paragraaf 6 (uitleg komt nog).
timer
10:00

Slide 18 - Open vraag

Deze slide heeft geen instructies

Slide 19 - Tekstslide

Theorie achter 'for-loop icm lijst'
for ..... in .........:
    print(.....)
planeList = ["B737", "A380", "F16"]

Slide 20 - Tekstslide

Deze slide heeft geen instructies

1. Schrijf de naam van de lijst op de goede plek
for ..... in planeList:
    print(.....)
planeList = ["B737", "A380", "F16"]

Slide 21 - Tekstslide

Deze slide heeft geen instructies

1. Schrijf de naam van de lijst op de goede plek
2. Bedenk: hoe noem ik één item in de lijst?
for ..... in planeList:
    print(.....)
planeList = ["B737", "A380", "F16"]

Slide 22 - Tekstslide

Deze slide heeft geen instructies

1. Schrijf de naam van de lijst op de goede plek
2. Bedenk: hoe noem ik één item in de lijst?
for plane in planeList:
    print(.....)
for ..... in planeList:
    print(.....)
planeList = ["B737", "A380", "F16"]

Slide 23 - Tekstslide

Deze slide heeft geen instructies

1. Schrijf de naam van de lijst op de goede plek
2. Bedenk: hoe noem ik één item in de lijst?
3. De indented regel wordt voor ieder item uitgevoerd.
for plane in planeList:
    print(.....)
for ..... in planeList:
    print(.....)
planeList = ["B737", "A380", "F16"]

Slide 24 - Tekstslide

Deze slide heeft geen instructies

1. Schrijf de naam van de lijst op de goede plek
2. Bedenk: hoe noem ik één item in de lijst?
for plane in planeList:
    print(plane)
3. De indented regel wordt voor ieder item uitgevoerd.
for plane in planeList:
    print(.....)
for ..... in planeList:
    print(.....)
planeList = ["B737", "A380", "F16"]

Slide 25 - Tekstslide

Deze slide heeft geen instructies

1. Schrijf de naam van de lijst op de goede plek
2. Bedenk: hoe noem ik één item in de lijst?
for plane in planeList:
    print(plane)
3. De indented regel wordt voor ieder item uitgevoerd.
for plane in planeList:
    print(.....)
for ..... in planeList:
    print(.....)
planeList = ["B737", "A380", "F16"]
Noteer deze drie stappen als aantekening!

Slide 26 - Tekstslide

Deze slide heeft geen instructies

for .......... in ...........:

    print(...........)
pilotList
pilot
pilot
pilots

Slide 27 - Sleepvraag

Deze slide heeft geen instructies

for .......... in ...........:

    print(...........)
book
book1
bookList
book

Slide 28 - Sleepvraag

Deze slide heeft geen instructies

Lezen en maken: H3, paragraaf 6 + 7.
Inleveren: drie keer screenshot (7.1 t/m 7.3).

Klaar? Verder vanaf paragraaf 8 (uitleg komt nog).
timer
15:00

Slide 29 - Open vraag

Deze slide heeft geen instructies

Control-structures: while-loop
  • Naast de for-loop is er ook de while-loop.

Slide 30 - Tekstslide

Deze slide heeft geen instructies

Initialiseren - op regel 3 wordt de variabele 'letter' gecheckt. Maar pas daarna wordt de variabele voor het eerst gevuld met de 'input'. Dat kan eigenlijk niet, dus moeten we aan het begin van het programma de variabele alvast aanmaken. We stoppen er dan een lege string in ("").
Na de loop - deze regel valt buiten de scope van de while-loop. Hij wordt uitgevoerd als de while-loop helemaal klaar is. Ofwel: als we de letter hebben geraden!
Niet gelijk aan - de operator != betekent 'niet gelijk aan' of 'niet is'. Het uitroepteken wordt vaak gebruikt om 'niet' aan te duiden.
Scope - deze regel wordt steeds herhaald, want hij valt in de scope van de while-loop (omdat de regel naar rechts staat, hij is 'indented').

Slide 31 - Tekstslide

Deze slide heeft geen instructies

Patroon: for-loop, één item uitzonderen







Wat gebeurt hier nu? Regel-voor-regel...

Slide 32 - Tekstslide

Deze slide heeft geen instructies

Patroon: for-loop, één item uitzonderen







Wat gebeurt hier nu? Regel-voor-regel...

Slide 33 - Tekstslide

Deze slide heeft geen instructies

Control-structures: while-loop
Lezen en maken: H3, paragraaf 8 t/m 12

Wie heeft deze nog niet gemaakt?
15 minuten -> maken

Slide 34 - Tekstslide

Deze slide heeft geen instructies

Feedbackmoment:
  • Voorbereiden: zie H3, paragraaf 13.

Slide 35 - Tekstslide

Deze slide heeft geen instructies

Weekcheck H3
  • Eindopdracht van het hoofdstuk.
  • Combineert alle theorie van H3.
  • De patronen kun je opzoeken, maar ga ze nu op een slimme manier samenvoegen!

Slide 36 - Tekstslide

Deze slide heeft geen instructies