Наибольший делитель Для заданного натурального числа n выведите его наибольший...

0 голосов
64 просмотров

Наибольший делитель Для заданного натурального числа n выведите его наибольший делитель, отличный от n. Входные данные Одно натуральное число n (1 < n < 2147000000). Выходные данные Выведите наибольший делитель числа n, отличный от n. На С++


Информатика (30 баллов) | 64 просмотров
Дан 1 ответ
0 голосов

#include

#include

#include

using namespace std;

int main(int argc, char argv[]) {

setlocale(LC_ALL, "Russian");

long long int a;

int i;

cout

cin >> a;

if (a

 cout

 return 1;

}

if (a % 2 == 0) {

 cout

}

else {

 for (i = a / 2; i > 1 && a % i; --i);

 if (i == 1)

 cout

 else {

 i = a / 2;

 while (a % i != 0)

   --i;

 cout

 }

}

return 0;

}

(294 баллов)