Ga naar hoofdinhoud

Opgaven

Wat je geleerd hebt

In dit hoofdstuk is het volgende besproken:

  • Wat boolean expressies zijn
  • Boolean waardes True en False
  • Vergelijkingen met <, <=, ==, >, >=, en !=
  • De in operator
  • Logische operatoren and, or, en not
  • Conditionele statements met if, elif, en else
  • Blokken code
  • Inspringing
  • Geneste condities
  • exit()

Opgave 1

In de Verenigde Staten worden schoolcijfers vaak uitgedrukt op een vijfletterschaal (A, B, C, D en F), waarbij A de hoogste score is en F de laagste score. Hieronder staat het classificatiesysteem dat het vaakst gebruikt wordt aan openbare middelbare scholen in de Verenigde Staten om numeriek scores (percentages) om te zetten naar letterscores.

letterscorepercentage
A90%-100%
B80%-89%
C70%-79%
D60%-69%
F< 60%

Schrijf code die deze vertaling van percentage naar letterscore maakt, waarbij de gebruiker gevraagd wordt om het percentage in te geven.

Voorbeeld

Invoer:

87

Uitvoer:

B

Opgave 2

Zoek de redeneerfout die gemaakt werd bij het schrijven van onderstaande code, en los ze op.

# numerieke score inlezen
numerieke_score = int(input())

# letterscore bepalen
if numerieke_score >= 60:
letterscore = 'D'
elif numerieke_score >= 70:
letterscore = 'C'
elif numerieke_score >= 80:
letterscore = 'B'
elif numerieke_score >= 90:
letterscore = 'A'
else:
letterscore = 'F'

# letterscore uitschrijven
print(letterscore)

Opgave 3

Vraag de gebruiker om een string. Druk af hoeveel verschillende klinkers er in de string zitten. Probeer de uitvoer een beetje netjes te maken (bijvoorbeeld, niet zo: “Er zitten 1 verschillende klinkers in de string”).

Voorbeeld

Invoer:

And now for something completely different.

Uitvoer:

De zin bevat 4 verschillende klinkers.

Voorbeeld

Invoer:

Spam! Spam! Spam! Spam! Spam! Spam!

Uitvoer:

De zin bevat slechts 1 verschillende klinker.

Opgave 4

Een kwadratische vergelijking is een vergelijking van de vorm

ax2+bx+c=0,ax^2 + bx + c = 0\,,

waarin a,b,cRa, b, c \in \mathbb{R} en a0a \neq 0.

De grootheid

D=b24acD = b^2 - 4ac

wordt de discriminant van de kwadratische vergelijking genoemd. Het teken van DD bepaalt het aantal reële oplossingen:

  • als D>0D > 0 dan zijn er twee verschillende reële oplossingen x1x2x_1 \neq x_2
  • als D=0D = 0 dan zijn er twee gelijke reële oplossingen x1=x2x_1 = x_2
  • als D<0D < 0 dan zijn er geen reële oplossingen voor de vergelijking

De reële oplossingen kunnen bepaald worden met de zogenaamde wortelformule:

x1=bD2a   en   x2=b+D2ax_{1} = \frac{-b - \sqrt{D}}{2a}\ \ \ \text{en}\ \ \ x_{2} = \frac{-b + \sqrt{D}}{2a}

Schrijf een programma dat de gebruiker vraagt om waardes voor AA, BB, en CC, en dan aangeeft hoeveel verschillende reële oplossingen de kwadratische vergelijking heeft. De oplossingen zelf moeten ook vermeld worden (als die er zijn).

Voorbeeld

Invoer:

1
4
-5

Uitvoer:

Er zijn 2 reële oplossingen: -5.0 en 1.0

Voorbeeld

Invoer:

1
-12
36

Uitvoer:

Er is 1 reële oplossing: 6.0

Voorbeeld

Invoer:

4
2
7

Uitvoer:

Er zijn geen reële oplossingen

Voorbeeld

Invoer:

0
0
3

Uitvoer:

Ongeldige vergelijking