Ga naar hoofdinhoud

De rekenmachine

Wat je al kent

Je weet hoe je variabelen aanmaakt (naam = "Alex", leeftijd = 15) en hoe je ze print. In deze les leer je iets nieuws: rekenoperatoren (zodat Python voor je rekent).

Tot nu toe stonden alle waarden direct in je programma, maar we deden er niets mee. Aan het einde van deze les bouw je een rekenmachine die automatisch alle uitkomsten berekent als je de variabelen aanpast.

Rekenoperatoren

Python kan rekenen als een calculator. We beginnen met de vier basis-operatoren:

OperatorBetekenisVoorbeeldResultaat
+Optellen5 + 38
-Aftrekken10 - 46
*Vermenigvuldigen3 * 721
/Delen10 / 42.5
print(5 + 3)    # 8
print(10 / 4) # 2.5

Let op: / geeft altijd een decimaal getal terug, ook als de uitkomst een geheel getal is (10 / 2 is 5.0).


Probeer zelf

Bereken 12 + 8 en print het resultaat.

# Print de uitkomst van 12 + 8
...
✅ Oplossing
print(12 + 8)

Rekenen met variabelen

Je kunt je variabelen uit les 2 direct gebruiken in berekeningen:

prijs = 12.50
aantal = 4
totaal = prijs * aantal

print("Totaal:", totaal) # 50.0

Rekenvolgorde

Net als bij wiskunde: vermenigvuldigen en delen gaan vóór optellen en aftrekken. Gebruik haakjes om de volgorde te sturen:

print(2 + 3 * 4)    # 14  (niet 20!)
print((2 + 3) * 4) # 20

Predict

Wat print dit programma? Schrijf je antwoord op.

a = 10
b = 3

print(a + b)
print(a - b)
print(a * b)
print(a / b)
Bekijk het antwoord
13
7
30
3.3333333333333335

/ geeft altijd een decimaal getal, zelfs als de uitkomst exact deelbaar zou zijn. Probeer 10 / 2 — dat is 5.0, niet 5.


Run

Voer de code uit en controleer je antwoord.


Investigate

Wat is het verschil tussen deze twee berekeningen? Probeer ze uit:

print(2 + 3 * 4)
print((2 + 3) * 4)
Bekijk het antwoord
14
20
  • 2 + 3 * 4 → eerst 3 * 4 = 12, dan 2 + 12 = 14.
  • (2 + 3) * 4 → haakjes eerst: 5 * 4 = 20.

Haakjes overrulen de standaard-rekenvolgorde. Bij twijfel: zet haakjes om duidelijk te maken wat eerst moet.


Er gaat iets mis

Probeer dit:

print(10 / 0)

Foutmelding:

ZeroDivisionError: division by zero

Waarom? In de wiskunde kan je niet door 0 delen — Python ook niet. Pas op: dit geldt ook voor variabelen waarvan je niet zeker weet of ze 0 zijn.


Modify

Pas de rekenmachine hieronder aan zodat hij ook het verschil en het product toont.

a = 20
b = 6

som = a + b
quotient = a / b

print("Som:", som)
print("Quotiënt:", quotient)
💡 Tip

Voeg twee nieuwe variabelen toe: verschil = a - b en product = a * b. Voeg daarna twee print()-regels toe.

✅ Oplossing
a = 20
b = 6

som = a + b
verschil = a - b
product = a * b
quotient = a / b

print("Som:", som)
print("Verschil:", verschil)
print("Product:", product)
print("Quotiënt:", quotient)

Make: Kassa-totaal

Je werkt aan een digitale kassa. Bereken de totaalprijs van een aankoop:

  • Een artikel kost een bepaalde prijs.
  • De klant koopt een bepaalde hoeveelheid.
  • Print het totaalbedrag.

Verwachte uitvoer (bij prijs = 1.50 en aantal = 4):

Totaal: 6.0 euro
prijs = 1.50
aantal = 4

# Bereken het totaal
totaal = ...

print("Totaal:", totaal, "euro")
💡 Tip

Totaal = prijs keer aantal. Gebruik *.

✅ Oplossing
prijs = 1.50
aantal = 4

totaal = prijs * aantal

print("Totaal:", totaal, "euro")

Make Bonus: Volledige rekenmachine

Bouw een rekenmachine die met twee variabelen a en b alle vier basis-berekeningen toont:

=== Rekenmachine ===
Getal 1: 10
Getal 2: 4

Som: 14
Verschil: 6
Product: 40
Quotiënt: 2.5
a = 10
b = 4

som = ...
verschil = ...
product = ...
quotient = ...

print("=== Rekenmachine ===")
print("Getal 1:", a)
print("Getal 2:", b)
print()
print("Som:     ", som)
print("Verschil:", verschil)
print("Product: ", product)
print("Quotiënt:", quotient)
💡 Tip

print() zonder tekst print een lege regel — handig voor witruimte.

✅ Oplossing
a = 10
b = 4

som = a + b
verschil = a - b
product = a * b
quotient = a / b

print("=== Rekenmachine ===")
print("Getal 1:", a)
print("Getal 2:", b)
print()
print("Som: ", som)
print("Verschil:", verschil)
print("Product: ", product)
print("Quotiënt:", quotient)
Volgende les

Je uitvoer is functioneel, maar print("Som:", som) is nog niet zo netjes. In de volgende les leer je f-strings — daarmee vlecht je tekst en variabelen tot één gladde zin.