2024级程序设计基础将其中考试暨新生赛-E判断完数

链接:https://ac.nowcoder.com/acm/contest/95677/E链接:https://ac.nowcoder.com/acm/contest/95677/E

来源:牛客网

题目描述

由键盘输入一个整数n,判断其是否为完数。

例如,28的因子为1、2、4、7,14,而28=1+2+4+7+14。因此28是“完数”。(注意:1不算完数)

输入描述:

输入为一个整数n,范围为(1≤n≤10000)。

输出描述:

若n是完数输出YES,否则输出NO,输出后有换行。

做这道题时要注意审题,题中说完数是自己所有除了本身以外的因子,使用循环时要去掉n,使循环 for(i=1;i<n;j++) 而不是i<=n,

还有就是1不是完数,最后要把它排除。

#include<iostream>

using namespace std;

int main()

{

long n;

cin>>n;

int c=0;

for(int i=1;i<n;i++){

if(n%i==0){c+=i;}

}

if(c==n&&n!=1){

cout<<"YES"<<endl;

}

else{

cout<<"NO"<<endl;

}

return 0;

}

全部评论

相关推荐

03-02 16:31
已编辑
合肥工业大学 golang
程序员鼠鼠_春招版:学历可以,项目普通,评价多余,奖项没有,如果有面试都是因为学历给你的,我建议可以随便包几个奖项上去,像什么蓝桥杯天梯赛,虽然不一定有用,但是相比acm这种风险小多了,我几段实习下来,压根没查的,第二点是包一段小厂实习,大厂你不好拿捏,小厂打打杂也能让你在26里面出彩一点
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务