/*
*Copyright (c) 2014,烟台大学计算机学院
*All rights reserved.
*文件名称 :soul.cpp
*作 者 :韩娟
*完成日期 :2014年11月6日
*版 本 号 :v1.0
*
*问题描述 :满足条件n=a!+b!+c!的所有的三位数,其中a,b,c分别是n的百,十,个位数,用自定义函数完成
*输入描述 :略
*程序输出 :满足条件n=a!+b!+c!的所有的三位数
*/
#include <iostream>
using namespace std;
int long fac(int);
int main()
{
int a,b,c,n,sum;
for(n=100;n<=999;++n)
{
a=n/100;
b=(n/10)%10;
c=n%10;
sum=fac(a)+fac(b)+fac(c);
if(sum==n)
cout<<n<<endl;
}
return 0;
}
int long fac(int n)
{
int i,h=1;
for(i=1;i<=n;++i)
h=h*i;
return h;
}
知识点总结 :
先在前面声明了需要用的函数,后面来进行定义,定义的时候用到了一个循环的语句。
学习新的 :
这个程序首先用到了前面的只是,对于除整,取余的用法了解,才能做好这题。