Zufallsexperiment, Ergebnis plotten
Verfasst: Mittwoch 1. Juni 2022, 08:32
Hallo zusammen,
wieder ein kleiner Versuch meinerseits: Ein Programm, was solange Wortkombinationen ausgibt, bis ein bestimmtes Wort gefunden wurde.
Wie immer etwas anfängerhafter 'Frankenstein-Code', da ich manche Snips von Stackoverflow etc. kopiere...
Funktioniert soweit (wobei auf meiner Rechnermöhre mit Thonny sehr langsam bei längeren Wörtern), allerdings bekomme ich den Ergebnisplot nicht hin. Stelle mir vor dass auf der X-Achse die Durchgänge abgebildet werden und auf der Y-Achse die Anzahl, bis das gesuchte Wort erschien.
Macht es Sinn, die Ergebnisse in einem Tupel zu speichern statt einer Liste? Wie könnte man die einzelnen Durchgänge speichern für eine Art 'Gesamtübersicht'?
Ich weiß natürlich, dass man die Ergebnisse auch per Stochastik ganz einfach berechnen kann, ist halt for fun und zum lernen von Python...
Grußies
Pf
wieder ein kleiner Versuch meinerseits: Ein Programm, was solange Wortkombinationen ausgibt, bis ein bestimmtes Wort gefunden wurde.
Wie immer etwas anfängerhafter 'Frankenstein-Code', da ich manche Snips von Stackoverflow etc. kopiere...
Code: Alles auswählen
import random
import string
import matplotlib.pyplot as plt
string.ascii_lowercase # or _uppercase or string.ascii_letters für Groß- und Kleinbuchstaben
def random_char(y):
return ''.join(random.choice(string.ascii_lowercase) for x in range(y))
ergebnis=[]
durchgang=5
for _ in range (durchgang):
zaehler=0
while True:
zaehler+=1
suche="x"
wort=random_char(len(suche))
print (zaehler,"=",wort,"| ", end='')
if (wort==suche):
ergebnis.append(zaehler)
print("<-- Gefunden")
break
print(f"\nAnzahl der Durchgänge: {durchgang} / Menge jeweils: {ergebnis}/ Durchschnitt: {sum(ergebnis)/len(ergebnis)}")
# Ergebnis ausgeben
x = [1,2,3,4,5] # hier müsste irgendwie die Anzahl der Durchgänge als Variable rein?!
y = [ergebnis]
plt.plot(y)
plt.plot(x)
plt.xlabel('Durchgänge')
plt.ylabel('Benötigte Versuche')
plt.title('Ergebnis')
plt.show()
Macht es Sinn, die Ergebnisse in einem Tupel zu speichern statt einer Liste? Wie könnte man die einzelnen Durchgänge speichern für eine Art 'Gesamtübersicht'?
Ich weiß natürlich, dass man die Ergebnisse auch per Stochastik ganz einfach berechnen kann, ist halt for fun und zum lernen von Python...
Grußies
Pf