Zum Inhalt springen

Kurs:Python/LG/Py2009/Arbeit mit Zahlen

Aus Wikiversity

Wurzel ziehen

[Bearbeiten]

Einfaches Programm

from math import sqrt
zahl = input ("Bitte geben Sie eine Zahl ein: ")
print sqrt(zahl)

Komplexeres Beispiel (Quelle)

from math import sqrt

for n in range(99, 0, -1):
    root = sqrt(n)
    if root == int(root):
        print n
        break

Das Programm kontrolliert, ob die Wurzel eine Ganzzahl ist (root == int(root)).

Zahlen raten

[Bearbeiten]

Grundaufgabe (Note 4)

[Bearbeiten]
import random

zahl = random.randint(1, 100)
eingabe = 0

print "Es soll eine Zahl zwischen 1 und 100 geraten werden."

while eingabe != zahl:
    eingabe = input ("Rate: ")
    if eingabe < zahl:
        print "Zu klein!"
    elif eingabe > zahl:
        print "Zu gross!"
    elif eingabe == zahl:
        print "Richtig!"

print "ENDE"

Ich vermute, dass ich jetzt die 4 habe ;-)

Erweiterung 1 (Note 3)

[Bearbeiten]
import random

obergrenze = input ("Geben Sie fuer das Ratespiel die Obergrenze ein: ")
zahl = random.randint(1, obergrenze)
eingabe = 0
versuch_gross = 0
versuch_klein  = 0

print "Es soll eine Zahl zwischen 1 und", obergrenze ,"geraten werden."

while eingabe != zahl:
    eingabe = input ("Rate: ")
    if eingabe < zahl:
        print "Zu klein!"
        versuch_klein += 1
    elif eingabe > zahl:
        print "Zu gross!"
        versuch_gross += 1
    elif eingabe == zahl:
        print "Richtig!"

print versuch_gross, "Zahl(en) war(en) zu gross,", versuch_klein, " zu klein."

Erweiterung 2 (Note 2)

[Bearbeiten]
import random

obergrenze = input ("Geben Sie fuer das Ratespiel die Obergrenze ein: ")
zahl = random.randint(1, obergrenze)
eingabe = 0
versuch_gross = 0
versuch_klein  = 0

print "Es soll eine Zahl zwischen 1 und", obergrenze ,"geraten werden."

while eingabe != zahl:
    eingabe = input ("Rate: ")
    if eingabe < 1:
        print "Der Wert darf nicht < 1 sein!" # M. E. ein Fehler in der Aufgabenbeschreibung.
    elif eingabe > obergrenze:
        print "Der Wert darf nicht >",  obergrenze,  "sein!"
    elif eingabe < zahl:
        print "Zu klein!"
        versuch_klein += 1
    elif eingabe > zahl:
        print "Zu gross!"
        versuch_gross += 1
    elif eingabe == zahl:
        print "Richtig!"

print versuch_gross, "Zahl(en) war(en) zu gross,", versuch_klein, " zu klein."

Erweiterung 3 (Note 1)

[Bearbeiten]
Aufgabe
  • obergrenze = 100
  • Alle Eingaben sollen in ein Wert eingefügt werden.
  • Alle Werte sollen am Ende tabellarisch nach Nummer des Versuchs ausgegeben werden und zwar mit dem Zusatz „zu groß“ oder „zu klein“ bzw. „richtig“.

Ausgabe:

1. Versuch: 10  zu gross
2. Versuch:  5  zu klein
3. Versuch:  7  richtig
Programm
print "Hierzu fehlen mir die Kenntnisse."