求一个数的最小因子,就是一个数所有的最小因子相乘,我们用c语言的while语句来实现
#include <stdio.h>
#include <math.h>
int main()
{
int a,b=2;
printf("请输入一个整数:",a);
scanf("%d",&a);
printf("%d的最小因子是: ",a);
while(b<=a)
{
if(a%b==0)
{
printf("%d",b);
a /=b;
}
else
b++;
}
return 0;
}
完全数
全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。如果一个数恰好等于它的真因子之和,则称该数为“完全数”。
我们以10000为范围来找出10000以内的完全数。
#include <stdio.h>
int main()
{
int i,j,a=10000;
int sum;
for(i=1;i<=a;i++)
{
sum=0;
for(j=1;j<i;j++)
{
if(i%j==0)
sum+=j;
}
if(sum==i)
printf("%d ",i);
}
return 0;
}