Cerinţa
Să se scrie un program care citește de la tastatură un număr natural n și verifică dacă este prim.
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieşire
Programul afișează pe ecran mesajul DA, dacă n este număr prim, respectiv NU în caz contrar.
Restricţii şi precizări
0 ≤ n ≤ 1.000.000.000
un număr natural este prim dacă are exact doi divizori distincți: 1 și el însuși.
Exemplu
Intrare
17
Ieșire
DA
pentru 60 puncte pe pbinfo
dau coroana
Răspunsuri la întrebare
Răspuns de
0
Salut!
Ai rezolvarea in C++ mai jos
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
//presupunem ca numarul este prim
bool prim = true;
//orice nr mai mic decat 2 nu este prim
if (n < 2) {
prim = false;
}
//numerele pare mai mari decat 2 nu sunt prime
if (n % 2 == 0 && n > 2) {
prim = false;
}
//cautam un divizor impar
for (int d = 3; d * d <= n && prim; d ++) {
if (n % d == 0) { //daca am gasit un divizor inseamna ca nr ul nu este prim
prim = 0;
}
}
if (prim) {
cout << "DA";
}
else {
cout << "NU";
}
return 0;
}
Alte întrebări interesante
Biologie,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă