马虎的算式(C语言)

小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。 有一次,老师出的题目是 36x495=?,他却给抄成了,396x45=? ,但结果却很戏剧性,他的答案竟然是对的 因为 36495=39645=17820 类似这样的巧合情况可能还有很多。
比如,27594=29754 假设 abcde 代表 1~9 不同的 5 个数字,注意是各不相同的数字,且不含 0 能满足形如, abcde=adbce 这样的算式一共有多少种情况。

C语言相关代码:

#include
 int main(void) 
 { 
 	int a,b,c,d,e; 
	 int sum=0;//用于记录个数
	  for(a=1;a<10;a++) 
	  		for(b=1;b<10;b++) 
	 		 	for(c=1;c<10;c++) 
	  				for(d=1;d<10;d++) 
	  					for(e=1;e<10;e++) 
	 						 if((10*a+b)*(100*c+10*d+e)==(a*100+d*10+b)*(c*10+e) 
	 							 &&a!=b&&a!=c&&a!=d&&a!=e&&b!=c&&b!=d&&b!=e&&c!=d&&c!=e&&d!=e)    //注意是各不相同的数字 
	  							{
								    sum++; 
	  								printf("%3d,%3d,%3d,%3d,%3d\n",a,b,c,d,e); 
	  							} 
	 							 printf("%4d 种\n",sum); 
	 							 return 0; 
}

你可能感兴趣的:(马虎的算式(C语言))