ich habe vor kurzem mit Python angefangen und hab als Übung mal einen BMI-Rechner gebastelt. Er funktioniert auch gut nur wollt ich noch etwas erweitern, sodass er das Ergebnis auf zwei Nachkommastellen rundet. Eigentlich kein problem, nur scheint die Range-Funktion Probleme zu haben:
Code: Alles auswählen
#!/usr/bin/python
# den BMI ausrechnen
#BMI=Körpergröße:(Körpergröße in m)²
import string
print "Mit diesem Programm können Sie Ihren BMI ausrechnen."
while True:
print
kg=int(raw_input("Tippen Sie bitte Ihr Gewicht in kg ein: "))
if kg<25 or kg>300:
print "Geben Sie bitte eine sinnvolle Eingabe ein"
print"_____________________________________________"
continue
cm=float(raw_input("Tippen Sie bitte ihre Größe in Metern ein: "))#float, wegen Fließkommadarstellung von Metern
if cm<1.00 or cm>2.50:
print"Geben Sie bitte eine sinnvolle Eingabe ein"
print"_____________________________________________"
continue
bmi=int (kg/cm**2) #BMI ausrechnen: als Ganzzahl=>Programm funktioniert einwandfrei
#als Fließkommazahl(bmi=float(kg/cm**2)=>Programm lässt den Rest aus
print"Ihr BMI beträgt : ","%.2f" % (bmi)
print
if bmi<20:
print "Sie sind untergewichtig!"
print
print
rest=raw_input("""Wollen Sie eine weitere Eingabe machen?
Beliebige Taste zum Fortfahren, `nein´ zum Beenden...
""")
if rest=="nein":
print "Vielen Dank! Auf Wiedersehen!"
break
else:
print "_____________________________________________"
continue
elif bmi in range(20,25):#eine Stelle, hab auch schon 20.00,25.00 ausprobiert
print "Sie sind normalgewichtig"
print
print
rest=raw_input("""Wollen Sie eine weitere Eingabe machen?
Beliebige Taste zum Fortfahren, `nein´ zum Beenden...
""")
if rest=="nein":
print "Vielen Dank! Auf Wiedersehen!"
break
else:
print "_____________________________________________"
continue
elif bmi in range (26,31):
print "Sie sind übergewichtig"
print
print
rest=raw_input("""Wollen Sie eine weitere Eingabe machen?
Beliebige Taste zum Fortfahren, `nein´ zum Beenden...
""")
if rest=="nein":
print "Vielen Dank! Auf Wiedersehen!"
break
else:
print "_____________________________________________"
continue
elif bmi>30:
print "Sie sind stark übergewichtig"
print
print
rest=raw_input("""Wollen Sie eine weitere Eingabe machen?
Beliebige Taste zum Fortfahren, `nein´ zum Beenden...
""")
if rest=="nein":
print "Vielen Dank! Auf Wiedersehen!"
break
else:
print "_____________________________________________"
continue
Kann ich das irgendwie hinkriegen, gibts da auch einen anderen befehl?