Wie schreibt man ein Programm in C++, um die ersten 'N' Primzahlen zu finden?

3 Antworten


  • // Primzahlen finden

    #include <iostream>

    Verwenden des Namensraums std;

    int main()

    {

    int n; //Benutzereingabe

    int-Zahl = 1; //Zahl, die getestet wird, wenn sie eine Primzahl ist

    int primeCount = 0; // zählt die Male, die es num % i == 0

    cout<< "Geben Sie ein, wie viele Primzahlen Sie wollen.
    ";

    cin>> n; //Anzahl der gewünschten Primzahlen

    // gibt 1 als Primzahl aus

    cout<< 1 << 'n';

    //zählt die Anzahl der Primzahlen

    for(int j = 1; j <= n; j++)

    {

      Zahl++; // Zahl = 2

      primeCount = 0;

    // Bestimmt, ob eine Zahl eine Primzahl ist

      for(int i = 1; i
    <= num; i++)

      {

      if(num % i ==
    0)

      {


    primeCount++;

      }

      }

      if(primeCount
    == 2)

      {


    cout<< num << 'n';

      }

    }

    0 zurückgeben;

    }

    Für weitere Informationen erhalten Sie Hilfe unter  CodeAvail – Online Computer Science Assignment
    help

  • Ein Programm in C++, um die ersten 'N' Primzahlen zu finden:

    #include<iostream.h>
    #include<conio.h>

    void OutResult(int number){

    bool prime=true;
    for(int I=2;I<number;I++){
        if(number%I==0){
            prime=false;
            brechen;
        }
    }
    if (prime)
    cout<<Nummer<<",";
    aufrechtzuerhalten.

    Void main () {
    Int-Nummer = 0;
    cout<<"Geben Sie eine zu überprüfende Zahl ein:";
    cin>>Zahl;
    for(int I=1;I<=Zahl;I++)
        OutResult(I);

    getch();
    }
  • Den Code verrate ich dir nicht. Aber hier ist der grundlegende Algorithmus. N=Anzahl der gewünschten Primzahlen.

    Stelle eine Theke auf (M). Auf 0 initialisiert.

    Ein Array (A) der Länge N aufbauen. Alle auf Null initialisieren.

    Erstelle eine gleitende Testzahl (T), gleitende Nenner=D=2.

    Angenommen, die ersten 3 Zahlen im Array sind 1, 2, 3.
    IF N=1 ist die Antwort 1, N=2,
    IF N=2, answer=(1,2),
    Wenn N=3, ist die Antwort answer (1,2,3).
    Programm ENDE, wenn N<=3.

    Andernfalls beginnen Sie mit dem Array-Raum M=4, T=4, D=2 .
    Der maximale D-Wert ist trunc[ (T/2)] + 1.

    TEST
    STARTPUNKT A
    Testen, ob mod(T/D)=ganze Zahl ist. Falls ja
    T=T+1; D=2; zurück zu TESTSTART
    sonst (wenn nein)
    D=D+1,
    wenn D< trunc(T/2) + 1,.
    goto POINT A
    else (D>= trunc(T2) + 1, also muss die Primzahl gefunden worden sein)
    Also Wenn D diesen Wert erreicht, dann
    A[M]=T; T=T+1; D=2; M=M+1. Wenn M < N+1, dann zurück zum TESTSTART. Sonst (M hat das Maximum erreicht, also Zeit bis zum Ende, aus der Schleife ausbrechen)

    end, alle A[1...N] ausdrucken

Schreibe deine Antwort

Ihre Antwort erscheint nach der Moderation appear