Python :: Aufgabe #345 :: Lösung #1
2 Lösungen

#345
Zahl ist Summe von Potenzwerten zur Basis 3
Anfänger - Python
von JKooP
- 18.04.2021 um 12:49 Uhr
Gegeben ist eine Integer-Zahl im Bereich von 1 bis 1.000.000.
Es soll geprüft werden, ob sich diese Zahl als Summe von Potenzwerten
zur Basis 3 darstellen lässt. Die Reihenfolge der Exponenten ist unerheblich.
Beispiele:
n = 12
Lösung: wahr => 12 = 3^1 + 3^2
n = 91
Lösung: Wahr => 3^0 + 3^2 + 3^4
n = 105
Lösung: Falsch
Erstelle eine Methode/Funktion, die für obige Aufgabenstellung als Ergebnis true/false zurückgibt.
Viel Spaß
Es soll geprüft werden, ob sich diese Zahl als Summe von Potenzwerten
zur Basis 3 darstellen lässt. Die Reihenfolge der Exponenten ist unerheblich.
Beispiele:
n = 12
Lösung: wahr => 12 = 3^1 + 3^2
n = 91
Lösung: Wahr => 3^0 + 3^2 + 3^4
n = 105
Lösung: Falsch
Erstelle eine Methode/Funktion, die für obige Aufgabenstellung als Ergebnis true/false zurückgibt.
Viel Spaß
#1

von eisheiliger (3750 Punkte)
- 19.04.2021 um 17:36 Uhr

""" #345: Zahl ist Summe von Potenzwerten zur Basis 3 Gegeben ist eine Integer-Zahl im Bereich von 1 bis 1.000.000. Es soll geprüft werden, ob sich diese Zahl als Summe von Potenzwerten zur Basis 3 darstellen lässt. """ def prf_pot3(n): pot = int(round(n ** (1 / 3.), 0)) print("n =", n, "ist") for i in range(pot + 1): if (n - 3 ** pot) >= 0: n -= 3 ** pot pot -= 1 if n == 0: print("wahr") else: print("falsch") def main(): prf_pot3(12) prf_pot3(91) prf_pot3(105) prf_pot3(4782969) prf_pot3(4782968) if __name__ == '__main__': main()
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1