【C++】约数

题目描述

对于一个正整数n,如果n除以某个正整数d所得的余数为0,我们称d是n的约数。显然1和n一定是n的约数,请问对于给定的n(n≥2),除了n本身以外,最大的约数是多少?

输入

共一行,包含一个正整数n。

输出

共一行,包含一个正整数,表示n除了自身以外的最大约数。

两端。

#include 
int main() 
{
    int n;
    scanf("%d", &n);
    int i = 2;
    while (i <= n / i)
    {
        if (n % i == 0)
        {
            printf("%d\n", n / i);
            break;
        }
        i++;
    }
    return 0;
}

你可能感兴趣的:(算法,数据结构)