¿Cómo se escribe un programa en C ++ para encontrar los primeros números primos 'N'?

3 Respuestas


  • // Encontrar números primos

    #include <iostream>

    usando el espacio de nombres std;

    int main ()

    {

    int n; //Entrada del usuario

    int num = 1; // número que se probará si es primo

    int primeCount = 0; // cuenta las veces que num% i == 0

    cout << "Ingrese cuántos números primos desea.
    ";

    cin >> n; // Número de números primos que desea

    // imprime 1 como número primo

    cout << 1 << 'n';

    // cuenta el número de primos

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

    {

      num ++; // num = 2

      primeCount = 0;

    // Determina si un número es primo

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

      {

      si (num% i ==
    0)

      {


    primeCount ++;

      }

      }

      si (primeCount
    == 2)

      {


    cout << num << 'n';

      }

    }

    return 0;

    }

    Para obtener más información, puede obtener ayuda en CodeAvail- Ayuda de asignación de ciencias de la computación en  línea

  • Un programa en C ++ para encontrar los primeros números primos 'N':

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

    void OutResult (número int) {

    bool prime = true;
    for (int I = 2; I <número; I ++) {
        if (número% I == 0) {
            primo = falso;
            pausa;
        }
    }
    if (primo)
    cout << número << ",";
    }

    void main () {
    int número = 0;
    cout << "Ingrese un número para verificar:";
    cin >> número;
    for (int I = 1; I <= número; I ++)
        OutResult (I);

    getch ();
    }
  • No te voy a contar el código. Pero aquí está el algoritmo básico. N = número de primos que desea.

    Configure un contador (M). Inicializado a 0.

    Configure una matriz (A) de longitud N. Inicialice todo a cero.

    Configure un número de prueba móvil (T), denominador móvil = D = 2.

    Suponga que los primeros 3 números de la matriz son 1, 2, 3.
    SI N = 1, la respuesta es 1, N = 2,
    SI N = 2, respuesta = (1,2),
    Si N = 3, la respuesta es (1,2,3).
    FIN del programa si N <= 3.

    De lo contrario, comience con el espacio de matriz M = 4, T = 4, D = 2.
    El valor máximo de D es trunc [(T / 2)] + 1. PUNTO

    DE INICIO
    DE LA PRUEBA A
    Prueba si mod (T / D) = número entero. En caso afirmativo
    T = T + 1; D = 2; volver a TEST START
    else (si no)
    D = D + 1,
    If D <trunc (T / 2) + 1 ,.
    ir al PUNTO A
    else (D> = trunc (T2) + 1, por lo que se debe haber encontrado el número primo)
    Por lo tanto, si D alcanza este valor, entonces
    A [M] = T; T = T + 1; D = 2; M = M + 1. Ahora, si M <N + 1, vuelva a INICIO DE PRUEBA. De lo contrario (M ha alcanzado el máximo, por lo que el tiempo para terminar, salir del bucle)

    fin, imprimir todo A [1 ... N]

Escribe tu respuesta

Tu respuesta aparecerá después de la moderación