Hoe ontstaan willekeurige getallen?
Over het algemeen wordt gedacht dat in een programma niets toevallig kan gebeuren. Hoe kan het dan,
dat een programma willekeurige getallen kan genereren? Wanneer een groot priemgetal door een
willekeurige waarde wordt gedeeld, ontstaan vanaf de x-te plaats na de komma getallen, die nauwelijks
nog voorspelbaar zijn. Deze veranderen ook zonder enige regelmatigheid, wanneer men de divisor
regelmatig verhoogt. Dit resultaat is dan wel ogenschijnlijk toevallig, maar kan echter door een identiek
programma of herhaaldelijk oproepen van hetzelfde programma op elk moment worden gereproduceerd.
Neemt men echter een uit enkele van deze cijfers opgebouwd getal en deelt men dat weer door een getal,
dat resulteert uit de actuele tijdseconde, of de inhoud van een willekeurige opslagplaats van de computer,
verschijnt een resultaat, dat niet kan worden gereproduceerd en daarom als willekeurig getal wordt
gekenmerkt.
De variabele
tip = 0
tip
De variabele
heeft zich onder programmeurs als teller van programmalusdoorlopen ingeburgerd. Hier
i = 0
i
wordt ze gebruikt, om het aantal tips te tellen, die de gebruiker heeft gebruikt, om het geheime getal te
raden. Ook deze variabele staat aan het begin op
while tip != getal:
zolang wordt herhaald, als
getal
. Python gebruikt de tekencombinatie
zahl
eigenlijke programmalus.
tip = input("Jouw tip:")
die in de variabelen
tip
Inspringing is belangrijk in Python
In de meeste programmeertalen worden programmalussen of beslissingen ingesprongen, om de
programmacode overzichtelijker te maken. In Python dienen deze inspringingen niet alleen voor over-
zichtelijkheid, maar zijn tevens nodig voor de programmalogica. Hiervoor heeft men hier geen speciale
leestekens nodig, om lussen of beslissingen te beëindigen.
Wanneer het geheime getal
if getal < tip:
dan ...
print "Het gezochte getal is kleiner dan ",tip
.... verschijnt deze tekst. Aan het einde staat hier de variabele
weergegeven. Is deze voorwaarde niet van toepassing, wordt de ingesprongen regel gewoon gepasseerd.
Wanneer het geheime getal
if tip < getal:
dan ...
print "Het gezochte getal is groter dan ",tip
bevat later het getal die de gebruiker als tip invoert. Aan het begin is ze
Het woord
(Engels voor »terwijl«) leidt een programmalus in, die in dit geval
while
, het getal, dat de gebruiker als tip invoert, en niet gelijk is aan het geheime
tip
De functie
input
wordt opgeslagen.
.
0
voor niet gelijk aan. Achter de dubbele punt volgt de
!=
schrijft de tekst
Jouw tip:
kleiner is dan de door de gebruiker getipte getal
zahl
, opdat het getipte getal in de tekst wordt
tip
groter is dan het door de gebruiker getipte getal
zahl
0
en verwacht hiernaar een invoer,
.
,
tip
,
tip
17