Hilfe Primzahl ermittler

  • geschlossen
  • C

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Hilfe Primzahl ermittler

    Hi leute ich hab gerade angefangen Technische in formatik zu studieren. Und sitze seit 21Uhr am PC schreibe programme, ein paar aufgaben habe ich geschafft, leider hänge ich an einer Aufgabe. Ich hab in diesem gebiet wenig Ahnung, da ich noch nie programiert habe.

    Also nun zum problem.
    Ich muss ein PR schreiben in C, der mir zu einer Positiven ganzen Zahl ermittelt ob es eine Primzahl ist oder nicht

    (Eine Zahl n ist eine Primzahl, wenn sie nur durch 1 und sich selber ohne Rest teilbar ist. D.h. man muss für alle Zahlen i mit 2 <= i < n untersuchen, ob n%i ein Ergebnis ungleich 0 hat.)

    Er soll mir einfach nur ausgeben
    n ist eine Primzahl;
    bzw
    n ist keine Primzahl;


    Also ich möchte nicht das jemand die aufgabe einfach für mich macht, sondern mir mehr hilft bzw. sagt was ich wie einzetzen soll. Eigenlitch weiß ich nicht wie ich, erzwinge das er eine positive zahl bekommt. Und wie ich die funktion für die primzahl ganz genau aufstelle.


    Danke euch im vorraus.
  • Also direkt bei c kann ich dir nicht helfen aber ich würde eine Schleife nehmen die alle teiler von 1 bis n/2 in ganzzahligen schritten überprüft :). Wie du jetzt rausfidnest ob das ne komma zahl is hab ich jetzt selber nen prob vllt kannste 2 vaiablen da haben die eine runen und dann guggn ob die ghleich sind :)
  • bei google habe ich das gefunden

    Quellcode

    1. /* Prim1.c: Einfaches Programm zur Berechnung von Primzahlen */
    2. #include
    3. /* Größte zu testende Zahl */
    4. #define MAX_ZAHL 100
    5. int main()
    6. {
    7. int Proband; /* aktuelle Zahl, die geprüft werden soll */
    8. int Divisor; /* aktueller Divisor */
    9. char Primzahl; /* Marke für Primzahl */
    10. /* Überschrift */
    11. printf("Primzahlen zwischen 1 und %d:\n", MAX_ZAHL);
    12. /* Schleife für alle zu prüfenden Zahlen */
    13. for(Proband=1; Proband<=MAX_ZAHL; Proband++) {
    14. Primzahl = 1; /* Annahme: Es ist eine Primzahl */
    15. /* Schleife für alle Divisoren */
    16. for(Divisor=2; Divisor<Proband; Divisor++) {
    17. /* Wenn kein Rest bei Division: keine Primzahl */
    18. if(Proband%Divisor==0) Primzahl = 0;
    19. }
    20. /* Ggf. Primzahl ausgeben */
    21. if(Primzahl) printf("%8d", Proband);
    22. }
    23. printf("\n"); /* Zeilenvorschub */
    24. return 0;
    25. }
    Alles anzeigen



    Dort siehst du ja wie es funktioniert.