C++ 求正整数所有因子和
C++ 求正整数所有因子和
题目描述
已知一个正整数 'N' (20<=N<=800000000),请你编写程序求出该数的全部因子(不包括 '1' 和它本身)的和。
输入格式
一个正整数 'N'
输出格式
一个整数(因子和)
输入输出样例
样例 1
输入样例 复制 24 输出样例 复制 35
样例说明 24的因子:2,3,4,6,8,12
解题思路:
- 遍历从2到sqrt(N),判断i是否为N的因子,如果是则将i和N/i加入到因子和中。
- 特别地,如果N的平方根是整数,那么将其加入到因子和中。
- 返回因子和。
具体实现步骤:
- 读取输入的正整数N。
- 初始化因子和sum为0。
- 遍历i从2到sqrt(N),判断i是否为N的因子,如果是则将i和N/i加入到sum中。
- 判断N的平方根是否为整数,如果是则将其加入到sum中。
- 输出sum作为结果。
原文地址: https://www.cveoy.top/t/topic/bP3v 著作权归作者所有。请勿转载和采集!