H4 - Keuzes: UITWERKINGEN

Opdracht 4.1 Vergelijkingsoperatoren

# Enkele vergelijkingen testen.

#Code die test of `1/2` groter dan, gelijk aan, of kleiner is dan `0.5`.
print("1/2 is groter dan 0.5 is: ", 1/2 > 0.5 )
print("1/2 is gelijk aan 0.5 is: ", 1/2 == 0.5 )
print("1/2 is kleiner dan 0.5 is: ", 1/2 <= 0.5 )
print("1/2 is ongelijk aan 0.5 is: ", 1/2 != 0.5 )
print("1/2 is kleiner dan 0.5 is: ", 1/2 < 0.5 )

Opdracht 4.2 Foutmelding bij een vergelijking

print( 3 < 4 )

De foutmelding is: TypeError: '<' not supported between instances of 'int' and 'str'

Feitelijk houdt dit in dat je niet kunt vragen of twee van elkaar afwijkende datatypes verschillend zijn in grootte.

Opdracht 4.3 Een 6 dobbelen

dobbelworp = 6

if dobbelworp == 6 :
        print("Yes! Je hebt een 6 gegooid")

Opdracht 4.4 Beide if's uitvoeren

Alle waarden kleiner of gelijk aan 3.
getal = 3

if getal <= 3:
        print( "A" )

if getal < 6:
        print( "B" )

Opdracht 4.5 Meerdere if's

x = 6
if x > 5:
    print( "A" )
if x >= 6:
    print( "B" )
if  x <  8 :
    print( "C" )
if x <= 5:
    print( "D" )
if x != 7:
    print( "E" )
if x <= 6 :
    print( "F" )

Opdracht 4.6 Meerdere getallen dobbelen

dobbelworp = 6 #met 6 worden beide zinnen afgedrukt

if dobbelworp == 6 :
	print("Yes! Je hebt een 6 gegooid")

if dobbelworp != 1:
	print("Gelukkig, je hebt geen 1 gegooid")

Opdracht 4.7 Welke letters zitten in een woord

woord = "informatica"

if "a" in woord:
    print("De letter 'a' zit in het woord " + woord)

if "b" in woord:
    print("De letter 'b' zit in het woord " + woord)

if "inf" in woord:
    print("De letters 'inf' zitten in het woord " + woord)

if "q" not in woord:
    print("De letter 'q' zit niet in het woord " + woord)

Opdracht 4.8 Van stroomdiagram naar code

x = 4
if x > 2 :
    print( "x > 2" )
else:
    print( "x <= 2" )

Opdracht 4.9 Batterij is bijna leeg!

batterij_energie = 2

if batterij_energie < 10:
    print ("True. Let op: batterij is bijna leeg. ")
else:
    print ("False. Dus batterij is NIET bijna leeg.")

Opdracht 4.10 Wachtwoordcontrole

print("Wat is het wachtwoord?")
ingevoerde_wachtwoord = input()

if ingevoerde_wachtwoord == "Geheim":
    print("Toegang geautoriseerd!")
else:
    print("Toegang geweigerd!")

Opdracht 4.11 Voldoende of onvoldoende

print("Wat is je cijfer?")
invoer = input()
ingevoerde_cijfer = float( invoer )

if ingevoerde_cijfer >= 5.5:
    print("Voldoende.")
else:
    print("Jammer, onvoldoende")

Opdracht 4.12 Het is weekend!

print( "Welk dag is het vandaag?" )
vandaag = input()

if vandaag == "zaterdag" or vandaag == "zondag":
    print( "Het is weekend!" )
else:
    print( "Helaas, geen weekend.")

Opdracht 4.13 Combinaties van logische operatoren

a) Print True als het op beide dagen vriest, anders print False.
temperatuur_gisteren = 1
temperatuur_vandaag = -1

if temperatuur_vandaag <= 0 and temperatuur_gisteren <= 0:
    print("True. Op beide dagen vriest het.")
else:
    print("False")
b) Print True als het op geen van beide dagen vriest, anders print False. Geen van beide dagen vriezen
temperatuur_gisteren = 1
temperatuur_vandaag = 1

if( not (temperatuur_gisteren <= 0 or temperatuur_vandaag <=0) ):
    print("True. Op GEEN van beide dagen vriest het.")
else:
    print("False")
OF
if( not(temperatuur_gisteren <= 0) and not(temperatuur_vandaag <=0) ):
    print("True. Op GEEN van beide dagen vriest het.")
else:
    print("False")
c) Print True als het op minstens een dag vriest, anders print False.
temperatuur_gisteren = -1
temperatuur_vandaag = -1

if( (temperatuur_gisteren <= 0) or (temperatuur_vandaag <=0) ):
    print("True.  Het vriest op minstens 1 dag.")
else:
    print("False")
d) Print True als het niet op allebei dagen vriest, anders print False.
temperatuur_gisteren = 1
temperatuur_vandaag = -1

if( not(temperatuur_gisteren <= 0) or not (temperatuur_vandaag <=0) ):
    print("True. Het vriest niet op allebei dagen")
else:
    print("False")
OF
if( not(temperatuur_gisteren <= 0 and temperatuur_vandaag <=0) ):
    print("True. Het vriest niet op allebei dagen")
else:
    print("False")

Opdracht 4.14 Verbeter de inspringfouten

x = 3
y = 4
if x == 3 and y == 4:
    print( "x is 3" )
    print( "y is 4" )
if x > 2 and y < 5:
    print( "x > 2" )
    print( "y < 5" )
if x < 4 and y > 3:
    print( "x < 4" )
    print( "y > 3" )

Opdracht 4.15 Geneste condities

Geen uitwerking beschikbaar

Opdracht 4.16 Nadenken over geneste condities

Antwoord: 4 en 5
Alle getallen tussen 3 en 6: 3 en 6 zijn uitgesloten.

Opdracht 4.17 Anders als: elif

Geen uitwerking beschikbaar.

Opdracht 4.18 Bagagetoeslag

# Gewichten van bagage.
print("Wat is het gewicht? ")
invoer = input()
gewicht = float( invoer )

if gewicht > 20:
    print( "Er moet een toeslag van $25 betaald worden voor bagage die te zwaar is." )
elif gewicht < 20:
    print( "Goede reis!" )
else:
    print( "Poeh! Dat gewicht is precies goed!" )
of
# Gewichten van bagage.
print("Wat is het gewicht? ")
invoer = input()
gewicht = float( invoer )

if gewicht > 20:
    print( "Er moet een toeslag van $25 betaald worden voor baggage die te zwaar is." )
else:
    if gewicht < 20:
        print( "Goede reis!" )
    else:
        print( "Poeh! Dat gewicht is precies goed!" )

Opdracht 4.19 Enquête

print("Hoe oud ben jij?")
invoer = input()
jouw_leeftijd = int( invoer )

if jouw_leeftijd <= 6:
	print("Perfect. Ik wil graag weten wat voor leesboeken kinderen leuk vinden.")
	jouw_boek_keuze = input("Wat is je lievelingsprentenboek?")
	print("Goeie keuze! Ik vind", jouw_boek_keuze, "ook leuk!")

elif jouw_leeftijd <= 10:
	print("Perfect. Ik wil graag weten wat voor leesboeken kinderen leuk vinden.")
	jouw_boek_keuze = input("Wat is je lievelingsverhalenboek?")
	print("Goeie keuze! Ik vind", jouw_boek_keuze, "ook leuk!")


elif jouw_leeftijd <= 16:
	print("Perfect. Ik wil graag weten wat voor leesboeken kinderen leuk vinden.")
	jouw_boek_keuze = input("Wat is je lievelingsroman?")
	print("Goeie keuze! Ik vind", jouw_boek_keuze, "ook leuk!")

else:
	print("Bedankt voor het meedenken, maar deze enquete is alleen voor kinderen")
of (met nesting)
print("Hoe oud ben jij?")
invoer = input()
jouw_leeftijd = int( invoer )

if jouw_leeftijd <= 16:
	print("Perfect. Ik wil graag weten wat voor leesboeken kinderen leuk vinden.")
	
	if jouw_leeftijd <= 6:

		jouw_boek_keuze = input("Wat is je lievelingsprentenboek?")

	elif jouw_leeftijd <= 10:
		jouw_boek_keuze = input("Wat is je lievelingsverhalenboek?")


	elif jouw_leeftijd <= 16:
		jouw_boek_keuze = input("Wat is je lievelingsroman?")


	print("Goeie keuze! Ik vind", jouw_boek_keuze, "ook leuk!")

else:
	print("Bedankt voor het meedenken, maar deze enquete is alleen voor kinderen")

H4 - Afsluitende Opdrachten: UITWERKINGEN

Afsluitende Opdracht 4.1 Kiesgerechtigd

print("Geef je leeftijd op")
invoer = input()
leeftijd =  int(invoer)

if leeftijd >= 18:
    print("Je mag stemmen!")
else:
    print("Je mag nog niet stemmen!")

Afsluitende Opdracht 4.2 Grootste

print("Geef een getal:")
invoer = input()
getal1 = int( invoer )

print("Geef een tweede getal:")
invoer = input()
getal2 = int( invoer )

if getal1>getal2:
	print( getal1, "is groter")
elif getal1 == getal2:
	print( getal1, "en", getal2, "zijn even groot")
else:
	print( getal2, "is groter")

Afsluitende Opdracht 4.3 Gelukkig

print( "Voel je je gelukkig?" )
reactie = input()

#print eerste de ogen
print("**  **")
print("**  **")
print("**  **")
print()

#print dan de mond
if reactie == "JA" or reactie == "Ja" or reactie == "ja":
    print("*    *")
    print(" **** ")
else:
    print(" **** ")
    print("*    *")

Afsluitende Opdracht 4.4 Lengte gebruikersnaam controleren

print( "Hallo. Hoe heet jij?" )
gebruikersnaam = input()
if len(gebruikersnaam) < 2:
    print("De ingevoerde naam is te kort. Geef je echte naam op!")
else:
    print("Hallo", gebruikersnaam)

Afsluitende Opdracht 4.5 Is even?

print("Geef een geheel getal.")
invoer = input()
getal = int(invoer)

if getal%2 == 0:
  print(getal, "is even")
else:
  print(getal, "is oneven")

Afsluitende Opdracht 4.6 Amerikaans beoordelen

# Amerikaans beoordelen.

print("Geef een cijfer: ")
invoer = input()
cijfer = float(invoer)

if cijfer < 0 or cijfer > 10:
    print( "Foutmelding: Cijfers moeten tussen 0 en 10 liggen!" )
else:
    if cijfer >= 8.5:
        print( "A" )
    else:
        if cijfer >= 7.5:
            print( "B" )
        else:
            if cijfer >= 6.5:
                print( "C" )
            else:
                if cijfer >= 5.5:
                    print( "D" )
                else:
                    print( "F" )
of
print("Geef je cijfer in:")
cijfer = float(input())
if cijfer >= 8.5 and cijfer <= 10:
  print("Je scoort een A")
elif cijfer >= 7.5 and cijfer < 8.5:
  print("Je scoort een B")
elif cijfer >= 6.5 and cijfer < 7.5:
  print("Je scoort een C")
elif cijfer >= 5.5 and cijfer < 6.5:
  print("Je scoort een D")
elif cijfer >= 0 and cijfer < 5.5:
  print("Je scoort een E")
else:
  print("Je cijfer is niet geldig")

Afsluitende Opdracht 4.7 Redeneerfout

score = 9.8
if score >= 8.5:
    oordeel = 'A'
elif score >= 7.5:
    oordeel = 'B'
elif score >= 6.5:
    oordeel = 'C'
elif score >= 5.5:
    oordeel = 'D'
else:
    oordeel = 'F'
print( oordeel )

Omdat al direct aan de eerste voorwaarde voldaan wordt, worden de overige voorwaarden niet meer gecheckt. Daardoor is het antwoord ā€˜D’ fout. De consities moeten omgedraaid worden: de laatste het eerst, enz.

Afsluitende Opdracht 4.8 Aantal verschillende klinkers

print("Geef een tekst")
invoer = input()

teller = 0
if ("a" in invoer) or ("A" in invoer):
    teller += 1
if ("e" in invoer) or ("E" in invoer):
    teller += 1
if ("i" in invoer) or ("I" in invoer):
    teller += 1
if ("o" in invoer) or ("O" in invoer):
    teller += 1
if ("u" in invoer) or ("U" in invoer):
    teller += 1

if teller == 0:
    print( "Er zitten geen klinkers in de tekst." )
elif teller == 1:
    print( "Er zit maar 1 soort klinker in de tekst." )
else:
    print( "Er zijn", teller, "verschillende klinkers." )

Afsluitende Opdracht 4.9 Brugklasadvies

cito_score = int( input("Geef de cito score op:") )

if cito_score < 501 or cito_score > 550:
    print("Dit is een ongeldige score.")
elif cito_score >=501 and cito_score <= 536:
    print("Het advies is: vmbo")
elif cito_score >=537 and cito_score <= 539:
    print("Het advies is: havo")
elif cito_score >=540 and cito_score <= 544:
    print("Het advies is: havo/vwo")
else:
    print("Het advies is vwo")

Afsluitende Opdracht 4.10 Geldige gebruikersnaam

print("Wat is je gebruikersnaam?")
gebruikersnaam naam = input()

if len(gebruikersnaam) < 2 or len(gebruikersnaam) > 20:
    print("De lengte van de gebruikersnaam is niet goed.")
elif ("?" in gebruikersnaam) or ("%" in gebruikersnaam) or ("&" in gebruikersnaam):
    print("De volgende vreemde tekens mogen niet voorkomen: ?, %, & ")
else:
    print("Hallo", gebruikersnaam)

Afsluitende Opdracht 4.11 App voor gewicht

print( "Wat was je vorige gewicht?" )
invoer = input()
vorige_gewicht = float( invoer )

print( "Wat is je huidige gewicht?" )
invoer = input()
huidige_gewicht = float( invoer )



if vorige_gewicht == huidige_gewicht:
	print("Je weegt nog precies hetzelfde als de vorige keer.")

else:
	if huidige_gewicht > vorige_gewicht:
		verschil = (huidige_gewicht - vorige_gewicht)*1000
		print("Je bent aangekomen met", round(verschil,0),"gram.")

	else:
		verschil = (vorige_gewicht - huidige_gewicht)*1000
		print("Je bent afgevallen met", round(verschil,0), "gram.")