Schrijf een script dat aan de gebruiker de naam van een dier vraagt en nog 1 extra vraag stel.
Het script geeft dan antwoord of het die een zoogdier is of niet?
Wanneer is een dier een zoogdier?
"Zoogdieren (Mammalia) vormen een klasse van warmbloedige, meestal levendbarende gewervelde dieren die hun jongen zogen: de moederdieren produceren melk en voeden hiermee hun jongen." Bron: Wikipedia
Je merkt dat het algoritme op een gegeven moment in twee gaat gesplitst worden. Om te bepalen of de linker of rechter kolom gevolgd wordt, wordt er een conditie gesteld. Dit is een ja/nee-vraag.
Uit onze analyse blijkt dat het wel of niet geven van melk de beslissende factor is. Er wordt aan de gebruiker dan ook gevraagd of het moederdier melk geeft. Deze data gaan we met een logische operator vergelijken met een ander gegeven, in ons geval met de tekst "ja"
De belangrijkste logische operators zijn:
gelijk aan: ==
groter dan: >
kleiner dan: <
groter of gelijk aan: >=
kleiner of gelijk aan: <=
Bovenstaand stukje algoritme zouden we in pseudo code kunnen vertalen als
Als geeft_melk = "Ja"
Geef als output "zoogdier"
Anders
Geef als output "geen zoogdier"
Eigenlijk geeft dit goed aan hoe Python werkt.
if <conditie>:
opdracht 1
opdracht 2
opdracht 3
else:
opdracht a
opdracht b
opdracht 4
De selectie start met
if <conditie>:
Daarna volgen één of meerdere opdracht die ingesprongen staan. Deze opdracht (in ons voorbeeld opdracht 1 t/m 3 vormen een blok. Een blok wordt beëindigd op de regel waar de opdrachten niet meer inspringen.
if <conditie>:
opdracht 1
opdracht 2
opdracht 3
Als aan de conditie voldaan is dan worden deze opdrachten uitgevoerd.
Na deze blok kan de else blok komen. Deze start met
else:
Ook hierna kunnen één of meerdere opdrachten ingesprongen staan die in blok vormen. Ook hier zal het blok beëindigd worden op de regel waar het inspringen stopt. In ons voorbeeld opracht 4. Als aan de conditie niet voldaan is, dan worden de opdracht in de else-blok uitgevoerd.
else:
opdracht a
opdracht b
opdracht 4
Na het uitvoeren van de if- of de else-blok gaat het script verder met opdracht 4.
Het kan ook zijn dat, als er niet aan de conditie voldaan is, er niets moet uitgevoerd worden. In dat geval is er geen else-blok.
if <conditie>:
opdracht 1
opdracht 2
opdracht 3
opdracht 4
Als aan de conditie niet voldaan is, wordt dan het if-blok overgeslagen, en springt het script onmiddellijk naar opdracht 4.
Je hebt nu alle informatie om het script te schrijven.
Om je te helpen kan staan hieronder de eerste lijnen met code. Deze kan je kopiëren naar je editor.
# Opdracht 2
dier = input("Geef naam van een dier: ")
geeft_melk = input("Geeft de moeder melk? (ja/nee) ")
# Opdracht 2
dier = input("Geef naam van een dier: ")
geeft_melk = input("Geeft de moeder melk? (ja/nee) ")
if geeft_melk=="ja":
print(dier," is een zoogdier")
else:
print(dier," is GEEN zoogdier")