Python :: Aufgabe #335 :: Lösung #1
5 Lösungen

#335
Primfaktorzerlegung und Potenzschreibweise
Fortgeschrittener - Python
von JKooP
- 03.04.2021 um 09:53 Uhr
1. Schreibe eine Methode/Funktion, die jede Integer- Zahl in ihre Primfaktoren zerlegen kann
und das Ergebnis als Array/Liste zurückgibt.
Beispiel:
24 = 2*2*2*3
Lösung:
a = { 2, 2, 2, 3 }
2. Schreibe eine weitere Methode/Funktion, die die Werte des Arrays aus Aufgabe 1
in Potenzschreibweise überführt und auf dem Bildschirm ausgibt.
Das Zeichen zur Darstellung kann je nach Vorliebe/Programmiersprache variieren (^, **, h, ...).
Lösung:
2*2*2 = 2^3
3 = 3^1
Ausgabe:
2^3 * 3^1
Viel Spaß
und das Ergebnis als Array/Liste zurückgibt.
Beispiel:
24 = 2*2*2*3
Lösung:
a = { 2, 2, 2, 3 }
2. Schreibe eine weitere Methode/Funktion, die die Werte des Arrays aus Aufgabe 1
in Potenzschreibweise überführt und auf dem Bildschirm ausgibt.
Das Zeichen zur Darstellung kann je nach Vorliebe/Programmiersprache variieren (^, **, h, ...).
Lösung:
2*2*2 = 2^3
3 = 3^1
Ausgabe:
2^3 * 3^1
Viel Spaß
#1

von eisheiliger (3750 Punkte)
- 07.04.2021 um 17:37 Uhr

""" #335: Primfaktorzerlegung und Potenzschreibweise Schreibe eine Methode/Funktion, die jede Integer- Zahl in ihre Primfaktoren zerlegen kann und das Ergebnis als Array/Liste zurückgibt. Schreibe eine weitere Methode/Funktion, die die Werte des Arrays in Potenzschreibweise überführt und auf dem Bildschirm ausgibt. """ import collections def prf_prim(ein): print("Ergebnis für die Zahl", ein) prim_arr = [] di = 2 while di ** 2 <= ein: while (ein % di) == 0: prim_arr.append(di) ein //= di di += 1 if ein > 1: prim_arr.append(ein) print(prim_arr) for (basis, hochz) in collections.Counter(prim_arr).items(): print(basis, "**", hochz) def main(): prf_prim(24) prf_prim(0) prf_prim(105) if __name__ == '__main__': main()
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1