Repository navigation
Expand file tree
/
Copy pathPrimeOrNot.cpp
More file actions
62 lines (51 loc) · 1.63 KB
/
Copy pathPrimeOrNot.cpp
File metadata and controls
62 lines (51 loc) · 1.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <iostream>
using namespace std;
int main() {
int num;
bool isPrime = true;
cout << "Enter Number To Check: ";
cin >> num;
// ====================================APPROACH 1 (More Intuitive, Less Optimal)==============================================
// // Option 1
// for (int i = 2; i < num; i++) {
// if (num % i == 0){
// isPrime = false;
// break;
// }
// }
// // Option 2
// // int i = 2;
// // while (i < num) {
// // if (num % i == 0){
// // isPrime = false;
// // break;
// // }
// // i++;
// // }
// =====================================APPOACH 2 (Less Intuitive, More Optimal)===================================================s
//Factors repeat after getting in form of "root(n) * root(n)", i factor hi hai.
// -> (i * i <= n) pe hi agr factor nikal aaya to theek warna aage bhi nahi aayega 'cause repeated hi hai so no need to check
//Using for loop
for (int i = 2; i * i <= num; i++) {
if (num % i == 0){
isPrime = false;
break;
}
}
// Using While Loop
// int i = 2;
// while (i * i <= num){
// if (num % i == 0) {
// isPrime = false;
// break;
// }
// i++;
// }
// =====================================================================================================================
if (isPrime) {
cout << "The number " << num << " is a Prime number\n";
} else {
cout << "The number " << num << " is not a Prime number\n";
}
return 0;
}