C++ GESP 1级数论题目
以下是精心设计的10道数论基础题目,按难度排序,适合GESP 1级考生练习
简单
中等
较难
难
1. 偶数判断
最简单
输入范围:−1000 ≤ n ≤ 1000
难度:★☆☆☆☆
题目描述:
判断输入的整数是否为偶数。
样例数据:
输入:0
输出:偶数
输入:−7
输出:奇数
输入:1024
输出:偶数
2. 最大公约数(GCD)
中等
输入范围:1 ≤ a, b ≤ 1000
难度:★★☆☆☆
题目描述:
求两个正整数的最大公约数。
样例数据:
输入:12 18
输出:6
输入:17 31
输出:1
输入:25 100
输出:25
3. 判断素数
中等
输入范围:2 ≤ n ≤ 1000
难度:★★☆☆☆
题目描述:
判断输入的正整数是否为素数。
样例数据:
输入:2
输出:Yes
输入:111
输出:No
输入:997
输出:Yes
4. 数位和
中等
输入范围:1 ≤ n ≤ 1,000,000
难度:★★☆☆☆
题目描述:
计算正整数的各位数字之和。
样例数据:
输入:12345
输出:15
输入:999999
输出:54
输入:1000000
输出:1
5. 因数个数
较难
输入范围:1 ≤ n ≤ 1000
难度:★★★☆☆
题目描述:
计算正整数的因数个数。
样例数据:
输入:1
输出:1
输入:12
输出:6
输入:100
输出:9
6. 最小公倍数(LCM)
较难
输入范围:1 ≤ a, b ≤ 1000
难度:★★★☆☆
题目描述:
求两个正整数的最小公倍数。
样例数据:
输入:4 6
输出:12
输入:7 8
输出:56
输入:25 100
输出:100
7. 阶乘计算
较难
输入范围:0 ≤ n ≤ 10
难度:★★★☆☆
题目描述:
计算非负整数的阶乘。
样例数据:
输入:0
输出:1
输入:5
输出:120
输入:10
输出:3628800
8. 斐波那契数列
较难
输入范围:1 ≤ n ≤ 30
难度:★★★☆☆
题目描述:
输出斐波那契数列的第n项。
样例数据:
输入:1
输出:1
输入:6
输出:8
输入:30
输出:832040
9. 完数判断
难
输入范围:1 ≤ n ≤ 10000
难度:★★★★☆
题目描述:
判断输入的数是否为完数(等于其所有真因数之和的数)。
样例数据:
输入:6
输出:Yes
输入:28
输出:Yes
输入:496
输出:Yes
输入:1000
输出:No
10. 质因数分解
难
输入范围:2 ≤ n ≤ 1000
难度:★★★★☆
题目描述:
输出正整数的质因数分解结果,格式为“n = p1^k1 * p2^k2 * ...”。
样例数据:
输入:12
输出:12 = 2^2 * 3^1
输入:100
输出:100 = 2^2 * 5^2
输入:997
输出:997 = 997^1