Die Suche ergab 11 Treffer

von nyxx
Dienstag 7. April 2015, 22:29
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Re: Klammern in Ausgabe einfügen (Python 3.4)

Super, danke euch beiden. Insbesondere an BlackJack für die eleganten Vorschläge. Ich denke jetzt ist das Thema ausreichend durchgekaut.
von nyxx
Dienstag 7. April 2015, 06:44
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Re: Klammern in Ausgabe einfügen (Python 3.4)

Danke für die Anmerkung, ich habe auch nochmal eine andere Variante geschrieben:

def Primfaktorzerlegung(eingabe):
primfaktoren=[0]* eingabe
faktorenundexponenten=[]
ausgabe=[]
i=2
j=1

while eingabe!=1:
if eingabe%i==0:
eingabe=eingabe//i
while eingabe%i==0:
eingabe=eingabe//i
j=j+1 ...
von nyxx
Montag 6. April 2015, 21:04
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Re: Klammern in Ausgabe einfügen (Python 3.4)

Habe jetzt mal BlackJacks Vorschlag umgesetzt.

def Primfaktorzerlegung(eingabe):
primfaktoren=[]
ausgabe=[]
i=2
j=1
while eingabe!=1:
if eingabe%i==0:

eingabe=eingabe//i
while eingabe%i==0:
eingabe=eingabe//i
j=j+1
if j>1:
primfaktoren.append("(%d^%d)" % (i, j))
j=1
else ...
von nyxx
Mittwoch 1. April 2015, 20:58
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Re: Klammern in Ausgabe einfügen (Python 3.4)

Danke nochmal! Bei mir gibt print([(i, Primtest(i)) for i in range(10)]) folgendes aus:
[(0, False), (1, False), (2, True), (3, True), (4, False), (5, True), (6, False), (7, True), (8, False), (9, False)]
@nyxx: Bezüglich der Namenschreibweise und Leerzeichensetzung könntest mal einen Blick in ...
von nyxx
Dienstag 31. März 2015, 21:16
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Re: Klammern in Ausgabe einfügen (Python 3.4)

Habe noch aufgeräumt:

import math
import collections

def Primtest(kandidat):
if kandidat<2:
return False
for i in range(2,int((math.sqrt(kandidat))+1)):
if kandidat%i==0:
return False
break
else:
return True


def Basehochexp(primefactors):
ausgabe=[]
if type(primefactors)==int:
return ...
von nyxx
Dienstag 31. März 2015, 16:26
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Re: Klammern in Ausgabe einfügen (Python 3.4)

Tatsache. :D Ich hatte irgendwelche Probleme bei der Übergabe einer Liste, warum kann ich aber auch nicht mehr sagen.
von nyxx
Dienstag 31. März 2015, 16:14
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Re: Klammern in Ausgabe einfügen (Python 3.4)

Die Magie mit dem * soll bewirken, dass die Funktion sich die Parameter aus einer Liste mit den Primfaktoren nimmt.

Aus factor_to_str bin ich noch nicht ganz schlau geworden.

Das ist übrigens der gesamte Code. Ich bin mir dessen bewusst, dass es noch einiges Verbesserungspotential gibt, ich ...
von nyxx
Montag 30. März 2015, 23:31
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Re: Klammern in Ausgabe einfügen (Python 3.4)

Für die Base-Exponenten Funktion bräuchte ich noch einen Tipp.
von nyxx
Montag 30. März 2015, 22:23
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Re: Klammern in Ausgabe einfügen (Python 3.4)

copy und paste... mitdenken und so...


def countexp(*args):

import collections
ausgabe=[]

for k, v in collections.Counter(args).items():
if v==1:
ausgabe.append(str(k))
else:
ausgabe.append("(%d^%d)" % (k, v))
return('*'.join(ausgabe))

Ist Zeile 6 okay oder ist collections.Counter ...
von nyxx
Montag 30. März 2015, 20:13
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Re: Klammern in Ausgabe einfügen (Python 3.4)

Hi, vielen danke für die guten Tipps! :D
Die Stringformatierung hat meine eigentliche Frage ja gleich mit gelöst. -Jetzt habe ich folgende Ausgabe: 1*(2^2)*3*(5^2)*7
import collections

eingabe=[1, 2, 2, 3, 5, 5, 7]
ausgabe=[]

cnt=collections.Counter()

for int in (eingabe):
cnt[int] +=1

for k ...
von nyxx
Montag 30. März 2015, 00:03
Forum: Allgemeine Fragen
Thema: Klammern in Ausgabe einfügen (Python 3.4)
Antworten: 21
Zugriffe: 2807

Klammern in Ausgabe einfügen (Python 3.4)

Hallo, ich programmiere in letzter Zeit aus Spaß in meiner Freizeit und möchte im Moment ein Programm zur Primfaktorenzerlegung schreiben.
Das funktioniert auch schon alles, aber ich möchte die Ausgabe noch perfektionieren, ich habe das dann einzeln angegangen.
Der Code findet mehrache Faktoren und ...