Python: Primfaktorzerlegung?
Kann mir jemand bitte bei Aufgabe c und d helfen? Ich verstehe sie nicht ganz und weiß nicht, was ich dafür verwenden könnte.
2 Antworten
zu c) Am einfachsten geht es wohl so:
for element in primfaktoren:
# element ist hier eine Liste mit zwei Einträgen:
faktor = element[0]
potenz = element[1]
produkt = produkt * (faktor**potenz)
Falls Du den Potenzoperator ** nicht benutzen darfst, musst Du eine innere Schleife über range(potenz) programmieren.
zu d)
Das geht mit einem Counter ganz einfach:
from collections import Counter
primfaktoren = [ 2, 2, 3, 7 ]
potenzen = Counter(primfaktoren).items()
print( 'Potenzdarstellung: ', potenzen )
Ich mag Python besonders deshalb, wiel es zu fast allen Routinearbeiten eine fertige Lösung anbietet. Ich befürchte aber, dass Du die Zählerei selbst programmieren sollst. Dann werden es ein paar Zeilen mehr sein. Allerdings kannst Du sicher Deine Lösung für b) hier wiederverwenden.
du musst zählen, wie oft welche zahl in der primfaktorzerlegung vorkommt
Das habe ich so gesehen ja schon in c gemacht... aber ich verstehe nicht, was ich danach machen soll