Dobbelsteen Opdracht BEFORE
import os
os.system(‘cls’)
import random
import os.path #
Bepalen van het bestand #
dobbelsteen_score = ‘c:/data/python/dobbelsteenscore.txt’
Functie input #
def invoer():
while True:
try:
aantal = int(input(“hoevaak moeten we werpen?”))
if aantal <= 0:
raise ValueError
return aantal
except TypeError:
print(‘Voer een heel getal groter dan 0 in’)
except ValueError:
print(‘Geeft een waarde groter dan 0’)
Functie dobbelsteen aanroepen #
def dobbelsteen(aantal_dobbelstenen):
“””Deze functie wordt gebruikt voor een
worp een opgegeven aantal dobbelstenen”””
lijst_dobbelsteen_getallen = []
for worp in range(aantal_dobbelstenen):
worp = random.randint(1, 6)
lijst_dobbelsteen_getallen.append(worp)
print(lijst_dobbelsteen_getallen)
return lijst_dobbelsteen_getallen
Alle variabelen definieren en vullen #
”’
Print hier de huidige datum en tijd. Sla deze op in een variabele.
”’
score = []
Gegevensbestand inlezen #
f = open(dobbelsteen_score, “r”)
for x in range(0,7):
score.append(int(f.readline()))
f.close()
teller = 0
teller1 = 0
teller2 = 0
teller3 = 0
teller4 = 0
teller5 = 0
teller6 = 0
teller_start = score[0]
teller1_file = score[1]
teller2_file = score[2]
teller3_file = score[3]
teller4_file = score[4]
teller5_file = score[5]
teller6_file = score[6]
Hoofdprogramma #
Bepaald vraaagt het aantal keer rollen van de dobbelsteen #
Controleerd de waarde en hoogt de bijbehorende teller op #
print(“Dit programma werp een aantal keren een dobbelsteen en berekend het percentage voor iedere zijde”)
aantal_rondes = invoer()
”’
Pas het programma aan door te vragen met hoeveel dobbelstenen je wil gooien
”’
while teller < aantal_rondes:
ogen = str(dobbelsteen(1))
teller = teller + 1
if ogen == “[1]”:
teller1=teller1+1
elif ogen == “[2]”:
teller2 = teller2 + 1
elif ogen == “[3]”:
teller3=teller3+1
elif ogen == “[4]”:
teller4=teller4+1
elif ogen == “[5]”:
teller5=teller5+1
else:
teller6=teller6+1
Vullen van de list #
score = [teller_start+aantal_rondes,
teller1+teller1_file,
teller2+teller2_file,
teller3+teller3_file,
teller4+teller4_file,
teller5+teller5_file,
teller6+teller6_file]
”’
Pas het programma aan door te berekenen wat het gemiddelde was van de huidige worpen
”’
Output genereren #
print (‘Voor deze ronde waren de uitslagen:’)
print (f”1 komt {teller1} voor, dit is {teller1/aantal_rondes100} %”) print (f”2 komt {teller2} voor, dit is {teller2/aantal_rondes100} %”)
print (f”3 komt {teller3} voor, dit is {teller3/aantal_rondes100} %”) print (f”4 komt {teller4} voor, dit is {teller4/aantal_rondes100} %”)
print (f”5 komt {teller5} voor, dit is {teller5/aantal_rondes100} %”) print (f”6 komt {teller6} voor, dit is {teller6/aantal_rondes100} %”)
print (f”In totaal is dit in {teller+teller_start} keer”)
print (f”1 komt {score[1]} voor, dit is {score[1]/score[0]100} %”) print (f”2 komt {score[2]} voor, dit is {score[2]/score[0]100} %”)
print (f”3 komt {score[3]} voor, dit is {score[3]/score[0]100} %”) print (f”4 komt {score[4]} voor, dit is {score[4]/score[0]100} %”)
print (f”5 komt {score[5]} voor, dit is {score[5]/score[0]100} %”) print (f”6 komt {score[6]} voor, dit is {score[6]/score[0]100} %”)
”’
Pas het programma aan door te berekenen wat het gemiddelde was van het totaal aantal worpen
”’
”’
Print hier de huidige datum en tijd. Sla deze op in een variabele.
Bereken hoe veel tijd er heeft gezeten tussen het starten en beindigen van het programme.
”’
Nieuwe bestand aanmaken #
f = open(dobbelsteen_score, “w”)
for x in range(len(score)):
f.write(str(score[x]))
f.write(“\n”)
f.close()
Dobbelsteen opdracht AFTER #
import os
os.system(‘cls’)
import datetime
import random
import os.path #
Bepalen van het bestand #
dobbelsteen_score = ‘c:/data/python/dobbelsteenscore.txt’
Functie input #
def invoer():
while True:
try:
aantal = int(input(“hoevaak moeten we werpen?”))
if aantal <= 0:
raise ValueError
return aantal
except TypeError:
print(‘Voer een heel getal groter dan 0 in’)
except ValueError:
print(‘Geeft een waarde groter dan 0’)
Functie dobbelsteen aanroepen #
def dobbelsteen(aantal_dobbelstenen):
“””Deze functie wordt gebruikt voor een
worp een opgegeven aantal dobbelstenen”””
lijst_dobbelsteen_getallen = []
for worp in range(aantal_dobbelstenen):
worp = random.randint(1, 6)
lijst_dobbelsteen_getallen.append(worp)
print(lijst_dobbelsteen_getallen)
return lijst_dobbelsteen_getallen
Alle variabelen definieren en vullen #
”’
Print hier de huidige datum en tijd. Sla deze op in een variabele.
”’
begin = datetime.datetime.now()
score = []
Gegevensbestand inlezen #
f = open(dobbelsteen_score, “r”)
for x in range(0,7):
score.append(int(f.readline()))
f.close()
teller = 0
teller1 = 0
teller2 = 0
teller3 = 0
teller4 = 0
teller5 = 0
teller6 = 0
teller_start = score[0]
teller1_file = score[1]
teller2_file = score[2]
teller3_file = score[3]
teller4_file = score[4]
teller5_file = score[5]
teller6_file = score[6]
Hoofdprogramma #
Bepaald vraaagt het aantal keer rollen van de dobbelsteen #
Controleerd de waarde en hoogt de bijbehorende teller op #
print(“Dit programma werp een aantal keren een dobbelsteen en berekend het percentage voor iedere zijde”)
aantal_rondes = invoer()
”’
Pas het programma aan door te vragen met hoeveel dobbelstenen je wil gooien
”’
dobbelvraag = int(input(“Hoeveel dobbelstenen wil je gooien?: “))
entry = []
while teller < aantal_rondes:
ogen = dobbelsteen(aantal_dobbelstenen=dobbelvraag)
entry.append(ogen)
teller = teller + 1
for each in ogen:
if each == 1:
teller1=teller1+1
elif each == 2:
teller2=teller2+1
elif each == 3:
teller3=teller3+1
elif each == 4:
teller4=teller4+1
elif each == 5:
teller5=teller5+1
else:
teller6=teller6+1
Vullen van de list #
score = [teller_start+aantal_rondes,
teller1+teller1_file,
teller2+teller2_file,
teller3+teller3_file,
teller4+teller4_file,
teller5+teller5_file,
teller6+teller6_file]
”’
Pas het programma aan door te berekenen wat het gemiddelde was van de huidige worpen
”’
gemiddelde = teller1 * 1 + teller2 * 2 + teller3 * 3 + teller4 * 4 + teller5 * 5 + teller6 * 6
gemiddelde_berekening = gemiddelde / (aantal_rondes * dobbelvraag)
print(gemiddelde_berekening)
Output genereren #
print (‘Voor deze ronde waren de uitslagen:’)
print (f”1 komt {teller1} voor, dit is {teller1/aantal_rondes100} %”) print (f”2 komt {teller2} voor, dit is {teller2/aantal_rondes100} %”)
print (f”3 komt {teller3} voor, dit is {teller3/aantal_rondes100} %”) print (f”4 komt {teller4} voor, dit is {teller4/aantal_rondes100} %”)
print (f”5 komt {teller5} voor, dit is {teller5/aantal_rondes100} %”) print (f”6 komt {teller6} voor, dit is {teller6/aantal_rondes100} %”)
print (f”In totaal is dit in {teller+teller_start} keer”)
print (f”1 komt {score[1]} voor, dit is {score[1]/score[0]100} %”) print (f”2 komt {score[2]} voor, dit is {score[2]/score[0]100} %”)
print (f”3 komt {score[3]} voor, dit is {score[3]/score[0]100} %”) print (f”4 komt {score[4]} voor, dit is {score[4]/score[0]100} %”)
print (f”5 komt {score[5]} voor, dit is {score[5]/score[0]100} %”) print (f”6 komt {score[6]} voor, dit is {score[6]/score[0]100} %”)
”’
Pas het programma aan door te berekenen wat het gemiddelde was van het totaal aantal worpen
”’
tot_gemid_worp = score[1] * 1 + score[2] * 2 + score[3] * 3 + score[4] * 4 + score[5] * 5 + score[6] * 6
tot_gemid_berek = tot_gemid_worp / teller
totaal_gemiddelde1 = teller1_file / aantal_rondes * 100
totaal_gemiddelde2 = teller2_file / aantal_rondes * 100
totaal_gemiddelde3 = teller3_file / aantal_rondes * 100
totaal_gemiddelde4 = teller4_file / aantal_rondes * 100
totaal_gemiddelde5 = teller5_file / aantal_rondes * 100
totaal_gemiddelde6 = teller6_file / aantal_rondes * 100
print(totaal_gemiddelde1)
print(totaal_gemiddelde2)
print(totaal_gemiddelde3)
print(totaal_gemiddelde4)
print(totaal_gemiddelde5)
print(totaal_gemiddelde6)
”’
Print hier de huidige datum en tijd. Sla deze op in een variabele.
Bereken hoe veel tijd er heeft gezeten tussen het starten en beindigen van het programme.
”’
eind = datetime.datetime.now()
verschil = eind – begin
print(verschil)
verschil = eind – begin #
Nieuwe bestand aanmaken #
f = open(dobbelsteen_score, “w”)
for x in range(len(score)):
f.write(str(score[x]))
f.write(“\n”)
f.close()