| |

Să se afişeze numerele prime imediat vecine unui număr n (numerele a şi b care îndeplinesc condifile, a şi b sunt numere prime, asnsb şi diferenta b-a este minima. 10

#include <iostream>

using namespace std;

int main() {

    int n;

    cout << „Introduceti un numar: „;

    cin >> n;

    // Cautam numere prime imediat vecine in ambele directii

    int a = n – 1;

    while (a > 1) {

        int este_prim = 1;

        for (int i = 2; i <= a / 2; i++) {

            if (a % i == 0) {

                este_prim = 0;

                break;

            }

        }

        if (este_prim) {

            break;

        }

        a–;

    }

    int b = n + 1;

    while (1) {

        int este_prim = 1;

        for (int i = 2; i <= b / 2; i++) {

            if (b % i == 0) {

                este_prim = 0;

                break;

            }

        }

        if (este_prim) {

            break;

        }

        b++;

    }

    // Afisam cele doua numere prime imediat vecine

    cout << „Numerele prime imediat vecine cu ” << n << ” sunt: ” << a << ” si ” << b << endl;

    return 0;

}

În acest program, am inițializat două variabile a și b cu valorile n-1 și n+1, respectiv, și apoi am căutat numerele prime imediat vecine în ambele direcții prin verificarea fiecărui număr de la a la 2 în cazul lui a, respectiv de la b la infinit în cazul lui b. Când am găsit un număr prim, am ieșit din bucla de căutare și am afișat cele două numere prime găsite.

În acest caz, am folosit valoarea 1 pentru a reprezenta că un număr este prim și 0 pentru a reprezenta că un număr nu este prim.

Similar Posts

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *