#Versuchen Sie die Ausgabe so zu ändern, dass die Liste wie eine Matrix ausgegeben wird. In diesem Fall 5×3.
from random import *
liste = []
for i in range(5):
temp = []
for j in range(3):
temp.append(randint(1,100))
liste.append(temp)
#print(liste)
for i in range(5):
print(liste[i])
#Aufgabe 2a
#Einfache Rechnungen mit + und -
from random import *
liste = []
while True:
listeElement = []
funktion = randint(1,2)
if funktion == 1:
zahl1 = randint(1,100)
zahl2 = randint(1,100)
eingabe = input("%d + %d"% (zahl1, zahl2))
if eingabe == 'q':
break
else:
listeElement.append(zahl1)
listeElement.append("+")
listeElement.append(zahl2)
listeElement.append(eingabe)
else:
zahl1 = randint(1,100)
zahl2 = randint(1,100)
eingabe = input("%d - %d"% (zahl1, zahl2))
if eingabe == 'q':
break
else:
listeElement.append(zahl1)
listeElement.append("-")
listeElement.append(zahl2)
listeElement.append(eingabe)
liste.append(listeElement)
print(liste)
#Aufgabe 2b
#Auswertung zu + und - (dieser Code läuft nicht ohne die Berechnung aus Aufgabe 2a)
anzahlRichtigerAntworten = 0
for element in liste:
if element[1] == "+":
resultat = element[0] + element[2]
if resultat == element[3]:
anzahlRichtigerAntworten += 1
else:
resultat = element[0] - element[2]
if resultat == element[3]:
anzahlRichtigerAntworten += 1
print(len(liste))
print(anzahlRichtigerAntworten)
print(anzahlRichtigerAntworten/len(liste)*100)
#Aufgabe 2c
#Einfache Rechnungen mit +, -, * & /
#Mögliche Probleme:
#-Benutzer kann bei Divisionen nur eine gewisse Anzahl stellen eingeben
#-einfache Rechnungen bedarfen bei der Multiplikation an kleineren Zahlen
from random import *
liste = []
while True:
listeElement = []
funktion = randint(1,4)
if funktion == 1:
zahl1 = randint(1,100)
zahl2 = randint(1,100)
eingabe = input("%d + %d"% (zahl1, zahl2))
if eingabe == 'q':
break
else:
listeElement.append(zahl1)
listeElement.append("+")
listeElement.append(zahl2)
listeElement.append(eingabe)
elif funktion == 2:
zahl1 = randint(1,100)
zahl2 = randint(1,100)
eingabe = input("%d - %d"% (zahl1, zahl2))
if eingabe == 'q':
break
else:
listeElement.append(zahl1)
listeElement.append("-")
listeElement.append(zahl2)
listeElement.append(eingabe)
elif funktion == 3:
zahl1 = randint(1,10)
zahl2 = randint(1,10)
eingabe = input("%d * %d"% (zahl1, zahl2))
if eingabe == 'q':
break
else:
listeElement.append(zahl1)
listeElement.append("*")
listeElement.append(zahl2)
listeElement.append(eingabe)
else:
zahl1 = randint(1,10)
zahl2 = randint(1,10)
eingabe = input("%d / %d"% (zahl1, zahl2))
if eingabe == 'q':
break
else:
listeElement.append(zahl1)
listeElement.append("/")
listeElement.append(zahl2)
listeElement.append(eingabe)
liste.append(listeElement)
anzahlRichtigerAntworten = 0
for element in liste:
if element[1] == "+":
resultat = element[0] + element[2]
if resultat == element[3]:
anzahlRichtigerAntworten += 1
elif element[1] == "-":
resultat = element[0] - element[2]
if resultat == element[3]:
anzahlRichtigerAntworten += 1
elif element[1] == "*":
resultat = element[0] * element[2]
if resultat == element[3]:
anzahlRichtigerAntworten += 1
else:
resultat = element[0] / element[2]
resultat = round(resultat,2)
if resultat == element[3]:
anzahlRichtigerAntworten += 1
print(len(liste))
print(anzahlRichtigerAntworten)
print(anzahlRichtigerAntworten/len(liste)*100)
#Aufgabe 2d
#Einfache Rechnungen mit +, -, * & / inkl. Start und Endzeit
from random import *
import time
from datetime import datetime
liste = []
start = datetime.now()
while True:
listeElement = []
funktion = randint(1,4)
if funktion == 1:
zahl1 = randint(1,100)
zahl2 = randint(1,100)
eingabe = input("%d + %d"% (zahl1, zahl2))
if eingabe == 'q':
break
else:
listeElement.append(zahl1)
listeElement.append("+")
listeElement.append(zahl2)
listeElement.append(eingabe)
elif funktion == 2:
zahl1 = randint(1,100)
zahl2 = randint(1,100)
eingabe = input("%d - %d"% (zahl1, zahl2))
if eingabe == 'q':
break
else:
listeElement.append(zahl1)
listeElement.append("-")
listeElement.append(zahl2)
listeElement.append(eingabe)
elif funktion == 3:
zahl1 = randint(1,10)
zahl2 = randint(1,10)
eingabe = input("%d * %d"% (zahl1, zahl2))
if eingabe == 'q':
break
else:
listeElement.append(zahl1)
listeElement.append("*")
listeElement.append(zahl2)
listeElement.append(eingabe)
else:
zahl1 = randint(1,10)
zahl2 = randint(1,10)
eingabe = input("%d / %d"% (zahl1, zahl2))
if eingabe == 'q':
break
else:
listeElement.append(zahl2)
listeElement.append("/")
listeElement.append(zahl1)
listeElement.append(eingabe)
liste.append(listeElement)
end = datetime.now()
anzahlRichtigerAntworten = 0
for element in liste:
if element[1] == "+":
resultat = element[0] + element[2]
if resultat == element[3]:
anzahlRichtigerAntworten += 1
elif element[1] == "-":
resultat = element[0] - element[2]
if resultat == element[3]:
anzahlRichtigerAntworten += 1
elif element[1] == "*":
resultat = element[0] * element[2]
if resultat == element[3]:
anzahlRichtigerAntworten += 1
else:
resultat = element[0] / element[2]
resultat = round(resultat,2)
if resultat == element[3]:
anzahlRichtigerAntworten += 1
print(len(liste))
print(anzahlRichtigerAntworten)
print(anzahlRichtigerAntworten/len(liste)*100)
print(end - start)