З клавіатури вводиться натуральне число, до десяткового запису якого додається в початок і в кінець цифра 1 (например: 478->14781). У підсумку визначити, просте чи це число?
Рішення:
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 | #include <iostream> #include <cstdlib> #include <cstring> using namespace std; bool is_simple(unsigned long n) { if (!(n % 2)) return false; for (unsigned long i = 3; i * i <= n; i += 2) if (!(n % i)) return false; return true; } int main() { setlocale(LC_ALL, "rus"); char buf[80] = "1"; while (true) { char *p = buf + 1; cout << "число: "; cin >> p; *(p += strlen(p)) = '1'; *++p = '\0'; cout << "число: " << buf << (is_simple(atol(buf)) ? " " : " не ") << "простое" << endl; } cout << endl; return 0; } |
Результат:
Не особливо зрозумів рішення на сайті зробив свою .
#include
#include
using namespace std;
bool foo( Int N) {
if (!(n % 2)) повернення помилковим;
for ( int i = 3; i * i > F;
strcat_s(A, F);
strcat_s(A, B);
cout << A << endl;
int g;
g = strlen(A);
int * pa = новий int[г] {};
int e = 0;
for (int i = 0; i < г; i ) {
Проте,[i] = A[е];
е ++;
}
for (int i = 0; i < г; i ) {
switch (Проте,[i]) {
case 48:
Проте,[i] = 0;
break;
case 49:
Проте,[i] = 1;
break;
case 50:
Проте,[i] = 2;
break;
case 51:
Проте,[i] = 3;
break;
case 52:
Проте,[i] = 4;
break;
case 53:
Проте,[i] = 5;
break;
case 54:
Проте,[i] = 6;
break;
case 55:
Проте,[i] = 7;
break;
case 56:
Проте,[i] = 8;
break;
case 57:
Проте,[i] = 9;
break;
}
}
ІНТ т = 1;
for (int i = 0; i < g-1; i ) {
t * = 10;
}
INT х = 0;
for (int i = 0; i < г; i ) {
x + = pa[i] * T;
t / = 10;
}
cout <<endl<< x;
cout << "число: " << (Foo(x) ? " " : " не ")<< "простое" << endl;
}
#include
#include
using namespace std;
bool foo( Int N) {
for (int i = 2; i > F;
strcat_s(A, F);
strcat_s(A, B);
cout << A << endl;
int g;
g = strlen(A);
int * pa = новий int[г] {};
int e = 0;
for (int i = 0; i < г; i ) {
Проте,[i] = A[е];
е ++;
}
for (int i = 0; i < г; i ) {
switch (Проте,[i]) {
case 48:
Проте,[i] = 0;
break;
case 49:
Проте,[i] = 1;
break;
case 50:
Проте,[i] = 2;
break;
case 51:
Проте,[i] = 3;
break;
case 52:
Проте,[i] = 4;
break;
case 53:
Проте,[i] = 5;
break;
case 54:
Проте,[i] = 6;
break;
case 55:
Проте,[i] = 7;
break;
case 56:
Проте,[i] = 8;
break;
case 57:
Проте,[i] = 9;
break;
}
}
ІНТ т = 1;
for (int i = 0; i < g-1; i ) {
t * = 10;
}
INT х = 0;
for (int i = 0; i < г; i ) {
x + = pa[i] * T;
t / = 10;
}
cout <<endl<< x;
cout << "число: " << (Foo(x) ? " " : " не ")<< "простое" << endl;
}
#include
using namespace std;
int main() {
ІНТ г, v, c;
int i = 0;
cout <> від;
int o = z;
while (від > 0) {
з / = 10;
i ;
}
з = 1;
for (int v = 1; v <= i; v++) {
c *= 10;
}
int d = c + o;
int x = d * 10 + 1;
cout << x << " – ";
for (int i = 2; i < x; ++i) {
if (x % i == 0) {
cout << " не простое число ";
break;
} else {
cout << "простое число ";
break;
}
}
return 0;
}