Also, ich muss n Programm schreiben… und ich komm einfach nicht weiter (bzw weis ich nichtmal wie ich anfangen soll)
und ich muss es heute bis 14 abgeben (studium)
Aufgabe;
Entwickeln oder recherchieren Sie einen Algorithmus zur Primfaktorzerlegung und codieren Sie Ihren Algorithmus in C. So ist bspw. die Primfaktorzerlegung von 6936 das Produkt 2 ∗ 2 ∗ 2 ∗ 3 ∗ 17 ∗ 17.
• Das Programm liest eine Variable ein (genau ein scanf ) s c a n f ( ”%d ” , . . . ) ;
• Das Programm gibt im Normalfall die Primfaktoren untereinander linksb¨ undig aus: p r i n t f ( ”%d \ n ” , . . . ) ; (nat¨ urlich wiederholt…) • Primfaktoren die mehrfach enthalten sind werden auch mehrfach (untereinander) ausgegeben. Auch nach dem letzten Primfaktor kommt ein Zeilenumbruch.
• Das Programm gibt im Falle einer Primzahl keine Primfaktoren sondern den Text ”… ist prim.“ (mit Zeilenumbruch) aus: p r i n t f ( ”%d i s t p r i m . \ n ” , . . . ) ;
• Das Programm gibt im Fehlerfall (z
hallo.
Also, ich muss n Programm schreiben… und ich komm einfach
nicht weiter (bzw weis ich nichtmal wie ich anfangen soll)
also paß auf:
- öffne ein neues fenster in deinem browser
- gib in der adreßzeile http://www.google.de ein
- gib im eingabefeld „primfaktorzerlegung in c“ ein
- drücke „Enter“
die ergebnisse sollten dich erstmal ne weile beschäftigen.
alternativ kannst du auch nur „primfaktorzerlegung“ eingeben oder „primfaktorzerlegung algorithmus“ (ohne gänsefüßchen).
und ich muss es heute bis 14 abgeben (studium)
da bist du ja verdammt früh dran!
wenn ihr mir helfen würdet, wär echt nice! danke im vorraus
nichts zu danken. für detailfragen meldest du dich einfach wieder.
gruß im nachhhinein
michael
Warum so eine kreative antwort?
Howdy,
Warum so eine kreative antwort?
weil wir hier nicht da sind, um deine Hausaufgaben zu machen, zudem noch eine Aufgabe, deren Basics du einfach per Google Search hättest herausfinden können.
Gruß
E.
hättet ihr auch mit nem nicht beantworten würdigen können, bzw. höfflicher… statt solch eine kreativität:wink: trtzdm danke.
[gruß]
haben wir doch in der Mehrzahl getan. Michael und E. haben dir (mit unserem impliziten Einverständnis) nur die Basics mitgeteilt.
[nick]
Tach,
die Frage liest sich wirklich grauselig. Bitte nächste smal etwas schöner einstellen und die Formattierungsmöglichkeiten von Wer-Weiß-Was nutzen…
Eins vorweg: Hausaufgaben mache ich dir keine. Du gibst ja nichtmal deine Denkansätze wieder. Hattest du dir überhaupt schon gedanken gemacht? Geh doch mal nicht mit C an die Problematik ran, sondern überlege, wie du es auf dem Papier machen würdest.
Bsp: Zahl 1234
Teile so oft durch 2, wie möglich -> Einmal möglich, erste Faktor -> 2
Teile so oft durch 3 wie möglich -> Nicht möglich
Teile so oft durch 5, wie möglich -> Nicht möglich
Teile so oft durch 7, wie möglich -> Nicht möglich
…
…
…
Das machst du so lange, bis deine Testzahl größer als deine aktuelle Zahl ist.
Pseudocode:
rest = 1234
aktuell = 2
solange rest > aktuell {
falls aktuell primzahl {
schleife solange rest modulo aktuell = 0 {
ausgabe: faktor aktuell
rest = rest / aktuell
}
inkrementiere aktuell
}
}
Zack. Ein ganz simpler algorithmus für die zerlegung. Es gibt mit sicherheit bessere, diesen hier habe ich mir gerade kurz aus den fingern gesaugt.
Und nächstes mal, fang früher an. Und du bekommst bessere antworten, wenn man sieht, das du dir davor schon mühe gegeben hättest und nicht nur eine aufgabenstellung aus einer PDF Rauskopierst (ja, das sieht man z.B. an äöü, dass das aus LaTeX generierten PDFs stammt).
Gruß