X 我知道了TIPS:左右滑动导航栏可以查看更多栏目
:一个数如果等于它的因子之和,这个数称为”完数”.例如,6的因子为1,2,3,而6=1+2+3.因此6为完数.编程序找出1000之内的所有完数,并按下列格式输出:
6 its factors are 1,2,3
多谢帮助,急待回复!!!!!!!!!!
>> 本文固定链接: http://www.vcgood.com/archives/952
>> 转载请注明: nacrompol 2006年08月02日 于 C语言帝国 发表
#include <iostream.h>int arr[256];//存放因数的一个数组,其实不用那么大.
//判断是否为完数的函数
void isComplete(int n){ arr[0] = 0;//数组第一个元素用来累加和,每次使用前要置0. int i = 0; int j = 0;//两个循环变量 int count = 0;//统计有几个因数 for (i=1; i<=n/2; i++) { for (j=1; j<=n; j++) { if (i*j == n) { count++; arr[count] = i; } } }
for (i=1; i<=count; i++) { arr[0] += arr[i]; } if (arr[0] == n) { cout << n << ” it’s factors are “; for (i=1; i<=count; i++) { cout << arr[i] <<”;”; } cout << endl; } else { return; }}
void main(){ for (int x=1; x<=1000; x++) { isComplete(x); }}
写得匆忙,没仔细检查.
ningweidong兄弟就是强。希望大家多多向他学习。C语言帝国要是多来点这类朋友。发展才有意义啊。。
:真是多谢!!!
请问iostream.h是什么函数,为什么我的计算机没法打开?????
我是用C++写的,如果用C编译的话,去掉那个头文件,把cout都换成printf。
你必须先 登录才能发表评论。
#include <iostream.h>
int arr[256];//存放因数的一个数组,其实不用那么大.
//判断是否为完数的函数
void isComplete(int n)
{
arr[0] = 0;//数组第一个元素用来累加和,每次使用前要置0.
int i = 0;
int j = 0;//两个循环变量
int count = 0;//统计有几个因数
for (i=1; i<=n/2; i++)
{
for (j=1; j<=n; j++)
{
if (i*j == n)
{
count++;
arr[count] = i;
}
}
}
for (i=1; i<=count; i++)
{
arr[0] += arr[i];
}
if (arr[0] == n)
{
cout << n << ” it’s factors are “;
for (i=1; i<=count; i++)
{
cout << arr[i] <<”;”;
}
cout << endl;
}
else
{
return;
}
}
void main()
{
for (int x=1; x<=1000; x++)
{
isComplete(x);
}
}
写得匆忙,没仔细检查.
ningweidong兄弟就是强。希望大家多多向他学习。C语言帝国要是多来点这类朋友。发展才有意义啊。。
:真是多谢!!!
请问iostream.h是什么函数,为什么我的计算机没法打开?????
我是用C++写的,如果用C编译的话,去掉那个头文件,把cout都换成printf。