Elke oefening kan worden opgelost met de theorie/technieken die tot en met dit hoofdstuk zijn overlopen. Echter worden in de voorbeeldoplossingen soms meer geavanceerde technieken gebruikt die tot een meer elegante oplossingen leiden. Noteer bovendien dat er steeds verschillende oplossingen mogelijk zijn.

H02.1

Gratis verzending

# Vraag de gebruiker naar het aankoopbedrag
aankoopbedrag = float(input("Voer het aankoopbedrag in: "))

# Bepaal of de gebruiker in aanmerking komt voor gratis verzending
if aankoopbedrag > 20:
    print("Je komt in aanmerking voor gratis verzending.")

Botten

x = int(input())

if x == 300:
    print("Dit is een baby")
elif x == 206:
    print("Dit is een volwassenen")
else:
    print("We weten het niet goed")

CLIL

x = input()
if x == "ja":
    print("oui")
else:
    print("non")

You shall not pass

x = input()
if x == "evil":
    print("You shall not pass")
else:
    print("You may pass")

Witte ruit

n = int(input())
auto = input()
if n >= 2 or auto == "taxi" or auto == "elektrisch" or auto == "hybride":
    print("Je mag rijden op de strook met een witte ruit")
else:
    print("Verander van rijstrook")

Automatische score

a1 = input()
a2 = input()
a3 = input()

i1 = input()
i2 = input()
i3 = input()
score = 0

if a1 == i1:
    score += 1
if a2 == i2:
    score += 1
if a3 == i3:
    score += 1

print(f"{score}/3")

Heb je even voor mij?

n = int(input())

if n % 2 == 0:  # Met deze vergelijking kan je kijken of een getal deelbaar is door 2 (dus even). werkt ook voor andere getallen.
    print("even")
else:
    print("oneven")

H02.2

Gratis verzending deel 2

# Vraag de gebruiker naar het aankoopbedrag
aankoopbedrag = float(input("Voer het aankoopbedrag in: "))

# Bepaal of de gebruiker in aanmerking komt voor gratis verzending
if aankoopbedrag >= 20:
    print("Je komt in aanmerking voor gratis verzending.")
    print("Het totaalbedrag inclusief verzending is", aankoopbedrag,"euro.")
else:
    totaalbedrag = aankoopbedrag + 4
    print("Je komt niet in aanmerking voor gratis verzending.")
    print("Het totaalbedrag inclusief verzending is", totaalbedrag, "euro.")

Vierkantsvergelijking

import math

a = float(input())
b = float(input())
c = float(input())

delta = b**2 - 4*a*c
if delta < 0:
    print("geen wortels")
elif delta == 0:
    print("een wortel")
    print(-b / 2*a)
else:
    print("twee wortels")
    x1 = (-b - math.sqrt(delta)) / (2*a)

Bloedgroep

allel1 = input()
allel2 = input()

if allel1 == allel2 or allel2 == "O":
    print(f"De combinatie van de ABO allelen {allel1} en {allel2} resulteert in bloedgroep {allel1}.")
elif allel1 == "O":
    print(f"De combinatie van de ABO allelen {allel1} en {allel2} resulteert in bloedgroep {allel2}.")
else:
    print(f"De combinatie van de ABO allelen {allel1} en {allel2} resulteert in bloedgroep AB.")

Hooikoorts

n = int(input())


if n == 0:
    kans = 'geen'
elif n <= 5:
    kans = 'zwak'
elif n <= 30:
    kans = 'matig'
else:
    kans = 'hoog'

print('Er is {} risico op allergie bij {} korrels per kubieke meter.'.format(kans,n))

Deliberatie

x1 = int(input())
x2 = int(input())
x3 = int(input())

if not(x1 <= x2 <= x3):
    print("ongeldige invoer")
elif min(x1, x2, x3) >= 50:
    print("geslaagd")
elif x2 >= 50 and x3 >= 50 and x1 >= 40 and x1+x2+x3 >= 150:
    print("gedelibereerd")
else:
    print("niet geslaagd")

Kaartmakkers

# kleur en waarde van eerste kaart inlezen
kleur1 = input()
waarde1 = input()

# kleur en waarde van tweede kaart inlezen
kleur2 = input()
waarde2 = input()

# kleur van de makker van de eerste kaart bepalen
if kleur1 == 'schoppen':
    makker = 'klaveren'
elif kleur1 == 'harten':
    makker = 'ruiten'
elif kleur1 == 'klaveren':
    makker = 'schoppen'
else:
    makker = 'harten'
    
# bepalen of de tweede kaart een makker is van de eerste kaart
negatie = 'geen ' if makker != kleur2 or waarde1 != waarde2 else ''
    
# uitschrijven of de twee kaarten al dan niet makkers zijn
print(f'{kleur1} {waarde1} en {kleur2} {waarde2} zijn {negatie}makkers')

Blad, steen en schaar

# handgebaar van beide spelers inlezen
speler1 = input()
speler2 = input()

# resultaat van spelletje blad-steen-schaar bepalen
if speler1 == speler2:
    resultaat = 'gelijkspel'
elif (
    (speler1 == 'blad' and speler2 == 'steen') or
    (speler1 == 'steen' and speler2 == 'schaar') or
    (speler1 == 'schaar' and speler2 == 'blad')
):
    resultaat = 'speler1 wint'
else:
    resultaat = 'speler2 wint'

# uitkomst van spelletje blad-steen-schaar uitschrijven
print(resultaat)

APGAR score

ademhaling = input("Ademhaling: ")
pols_hartslag = int(input("Pols- en hartslag: "))
spierspanning_tonus = input("Spierspanning en -tonus: ")
apect_kleur = input("Aspect/kleur: ")
reactie_op_prikkels = input("Reactie op prikkels: ")

score = 0
geldige_invoer = True

if ademhaling == 'geen':
    score += 0
elif ademhaling == 'zwak':
    score += 1
elif ademhaling == 'goed doorhuilen':
    score += 2
else:
    geldige_invoer = False

if pols_hartslag == 0:
    score += 0
elif pols_hartslag < 100:
    score += 1
elif pols_hartslag >= 100:
    score += 2
else:
    geldige_invoer = False

if spierspanning_tonus == 'slap':
    score += 0
elif spierspanning_tonus == 'enige flexie':
    score += 1
elif spierspanning_tonus == 'actieve beweging':
    score += 2
else:
    geldige_invoer = False

if apect_kleur == 'blauw' or apect_kleur == 'bleek':
    score += 0
elif apect_kleur == 'extremiteiten':
    score += 1
elif apect_kleur == 'roze':
    score += 2
else:
    geldige_invoer = False

if reactie_op_prikkels == 'geen':
    score += 0
elif reactie_op_prikkels == 'enige beweging':
    score += 1
elif reactie_op_prikkels == 'krachtig huilen':
    score += 2
else:
    geldige_invoer = False


if geldige_invoer == False:
    print("ongeldige invoer")
elif score < 100:
    if score < 4:
        print("alarm")
    elif score >= 4:
        print(score)