69,382
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <stdlib.h>
//Function.h
int factorial(int n)
{
int sum = 1 ;
int i = 1 ;
if (n == 0)
return 1 ;
else
{
while(i <= n)
{
sum *= i ;
i ++ ;
}
return sum ;
}
}
//test.c
#include "Function.h"
void main()
{
int n = 100 ;
int gw = 0 , sw = 0 ,bw = 0 ;
int temp = 0 ;
while(n < 1000)
{
temp = n ;
gw = temp % 10 ;
temp /= 10 ;
sw = temp % 10 ;
temp /= 10 ;
bw = temp % 10 ;
if(n == (factorial(gw) + factorial(sw) + factorial(bw)))
printf("%d " , n) ;
n ++ ;
}
printf("\n") ;
system("pause") ;
}
#include "stdafx.h"
#include <conio.h>
int factorial( int n)
{
int fac;
if((n == 0)||(n ==1))
{
fac = 1;
}
else
{
fac = n*factorial(n-1);
}
return fac;
}
int _tmain(int argc, _TCHAR* argv[])
{
int a, b, c;
int n = 0;
for(a = 1; a<10; a++)
{
for(b = 0; b < 10; b++)
{
for(c = 0; c < 10; c++)
{
n = factorial(a) + factorial(b) + factorial(c);
if((100*a + 10*b + c) == n)
{
printf("%d\n", n);
}
n = 0;
}
}
}
getch();
return 0;
}
#include <iostream>
using namespace std;
int factorial(int n)
{
int nResult = 1;
while (n)
{
nResult *=n;
n--;
}
return nResult;
}
bool GetEveryNum(int nNum,int &H,int &T,int &O)
{
if (nNum<100)
{
return false;
}
H = nNum/100;
nNum = nNum%100;
T = nNum/10;
nNum = nNum%10;
O = nNum;
return true;
}
int main()
{
int nNum = 999;
while(nNum>100)
{
int n,nn,nnn;
int nResult;
GetEveryNum(nNum,nnn,nn,n);
nResult = factorial(n)+factorial(nn)+factorial(nnn);
if (nResult==nNum)
{
cout<<nNum<<endl;
}
nNum --;
}
return 0;
}