Wie kann ich in python eine zahl aufrunden?
Hey ich gerade an einer Aufgabe in Python um mein logisches denken bischen auszubreiten aber irgendwie brauche ich bischen hilfe ..
Ich muss ein Programm schreiben wo ich bei der eingabe der zahl auf das 100 fache aufrunde oder auf das 100fache abrunde .
Ich habe es tatsächlich mit der ceil und floor funktion ausprobiert und es funktioniert auch wenn ich in die klammern danach die zahl einsetzte aber ich mächte ja das die zahl auf oder abgerundet von der eingabe ausgestralt wird und nicht per einer konstanten Zahl ...
Versteht ihr was ich meine .
Ich bedanke mich im Vorraus und hier ist mein Programm wo ich hänge :D
import math
eingabe = int(input("Geben Sie eine Zahl ein: "))
x = math.floor(eingabe)
y = math.ceil(eingabe)
print(x,y)
2 Antworten
up = lambda n: (n+99)//100*100
down = lambda n: n//100*100
print(up(1200), down(1200)) # 1200 1200
print(up(1201), down(1201)) # 1300 1200
print(up(1299), down(1299)) # 1300 1200
Versteht ihr was ich meine .
Nicht so ganz, aber ich rate mal:
Du willst eine Zahl jeweils auf die Hunderterstelle auf- bzw. abrunden, z.B.
Abrunden: 1234 -> 1200
Aufrunden: 1234 -> 1300
Falls das zutrifft, sollte das gehen:
x = int(math.floor(eingabe/100.0)*100)
y = int(math.ceil(eingabe/100.0)*100)