解题思路:首先判断它是不是完数,然后用数组保存起来。
注意事项:
参考代码:
#include<iostream>
#include<string.h>
#include<stdlib.h>
#include<math.h>
using namespace std;
int main()
{
int n;
cin>>n;
int a[10000];
int index=0;
for(int i=6;i<=n;i++)
{
int k=1;
for(int j=2;j<=sqrt(i);j++)
{
if(i%j==0)
{
if(j!=i/j)
{
k=k+j;
k=k+i/j;
}
else
{
k=k+i/j;
}
}
}
if(k==i)
{
a[index++]=i;
}
}
for(int i=0;i<index;i++)
{
cout<<a[i]<<" its "<<"factors "<<"are ";
for(int j=1;j<a[i];j++)
{
if(a[i]%j==0)
cout<<j<<" ";
}
cout<<endl;
}
}
0.0分
18 人评分
点我有惊喜!你懂得!浏览:1357 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:652 |
【回文数(二)】 (C++代码)浏览:886 |
C语言程序设计教程(第三版)课后习题9.1 (Java代码)浏览:474 |
C语言程序设计教程(第三版)课后习题9.1 (C语言代码)浏览:691 |
The 3n + 1 problem (C语言代码)浏览:517 |
简单的a+b (C语言代码)浏览:668 |
找出最长的字符串来 (C语言代码)浏览:1796 |
青年歌手大奖赛_评委会打分 (C语言代码)浏览:2178 |
C语言训练-列出最简真分数序列* (C语言代码)浏览:612 |