Dezimalzahl in eine Basis umwandeln
Verfasst: Samstag 25. Oktober 2014, 23:13
Also, meine Aufgabe ist es Python so zu programmieren, dass man dann zwei Zahlen eingeben muss. Einmal eine Dezimalzahl und dann eine Basis, die auch aus Buchstaben bestehen darf. Die Dezimalzahl soll dann in das Zahlensystem der Basis umgewandelt werden.
Ja, meine Idee das umzusetzen ist bestimmt super kompliziert, aber ich habe eben nicht so viele Kenntnisse.
Die Dezimalzahl soll x sein und die Basis n.
Was ich gefunden habe und was man benötigt ist einmal die Länge der Basis: len(n)
Durch diese Zahl muss man ja die Dezimalzahl teilen und den Rest nehmen.
Dann noch das modulo, also %.
x%len(n)
Dann habe ich mir überlegt eine Schleife zu machen, in der ich x%len(n) berechne. Da muss ich aber die Schrittgröße irgendwie verändern, so dass nicht alle Zahlen in 1er Schritten von x bis 0 durchgegangen werden... und da muss ich wissen wie man das macht.. und wie man die einzelnen Ergebnisse abspeichert, so dass man die dann alle am Ende nebeneinander "printen" kann..
Das ist mein Code bis jetzt...
Da steht zwar sum.. ich weiß aber dass das falsch ist. ich wusste nur nicht, was ich dahin schreiben soll und habe da aber was hingeschrieben, um den Algorithmus austesten zu können... Denn dann drücke ich F5 und gebe was für x und n ein und bekomme dann entweder eine Fehlermeldung oder nicht..
Ja, meine Idee das umzusetzen ist bestimmt super kompliziert, aber ich habe eben nicht so viele Kenntnisse.
Die Dezimalzahl soll x sein und die Basis n.
Was ich gefunden habe und was man benötigt ist einmal die Länge der Basis: len(n)
Durch diese Zahl muss man ja die Dezimalzahl teilen und den Rest nehmen.
Dann noch das modulo, also %.
x%len(n)
Dann habe ich mir überlegt eine Schleife zu machen, in der ich x%len(n) berechne. Da muss ich aber die Schrittgröße irgendwie verändern, so dass nicht alle Zahlen in 1er Schritten von x bis 0 durchgegangen werden... und da muss ich wissen wie man das macht.. und wie man die einzelnen Ergebnisse abspeichert, so dass man die dann alle am Ende nebeneinander "printen" kann..
Das ist mein Code bis jetzt...
Code: Alles auswählen
from sys import stdin
for line in stdin:
x,n=[str(line)for line in line.split()]
sum=0
for i in range (0,int(x)):
sum+=i%(len(n))
print(sum)