当前位置:首页 > 题解目录 > 正文内容

求正整数2和n之间的完全数

亿万年的星光5年前 (2021-01-28)题解目录2309

【题目描述】
求正整数2和n之间的完全数(一行一个数)。
完全数:因子之和等于它本身的自然数,如6=1+2+3
【输入描述】
输入n
【输出描述】

一行一个数,按由小到大的顺序。
【输入样例】

7
【输出样例】

6

#include<iostream>
using namespace std;
int judge(int x);
int main()
{
   int n;
   int i;
   cin>>n;
   for(i=2; i<=n; i++)
       if(judge(i)==i) //judge(i)为i的因子之和,judge(i)若与i相等,满足条件,输出
           cout<<i<<endl;
   return 0;
}
int judge(int x)
{
   int i;
   int sum=0;
   for(i=1; i<=x-1; i++) //枚举1到x中,判断是否为x的因子
       if(x%i==0) //若是x的因子,累加
           sum+=i;
   return sum;
}


扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

分享给朋友:
返回列表

没有更早的文章了...

下一篇:素数个数

相关文章

【题解】最大比例

【题目描述】X星球的某个大奖赛设了M级奖励。每个级别的奖金是一个正整数。并且,相邻的两个级别间的比例是个固定值。也就是说:所有级别的奖金数构成了一个等比数列。比如:16,24,36,54其等比值为:3...

【题解】剔除相关数

【题目描述】一个数与另一个数如果含有相同数字和个数的字符,则称两数相关。现有一堆乱七八糟的整数,里面可能充满了彼此相关的数,请你用一下手段,自动地将其剔除。【输入描述】每组数据前有一个N(<10...

【题解】二分法查找左边界

参考代码:# include <bits/stdc++.h> using namespace std; int a[100005];&...

【题解】括号匹配问题

【题目描述】在某个字符串(长度不超过100)中有左括号、右括号和大小写字母;规定(与常见的算数式子一样)任何一个左括号都从内到外与在它右边且距离最近的右括号匹配。写一个程序,找到无法匹配的左括号和右括...

【题解】发工资

【题目描述】财务处的小李最近就在考虑一个问题:如果每个员工的工资额都知道,最少需要准备多少张人民币,才能在给每位员工发工资的时候都不用员工找零呢?这里假设程序猿的工资都是正整数,单位元,人民币一共有1...

连词成句

【题目描述】有一天,毛毛上课的时候遇到了一个难题,老师让同学们把黑板上的单词连成一句话。已知连词的规则是:从待选词中选出正确的单词按照顺序输出,“正确的单词”表示除第一个单词外,其余单词都是小写字母,...