C语言《填数游戏》全流程

C语言《填数游戏》全流程,第1张

C语言《填数游戏》全流程

这个问题是这样的,如下

算   法   描   述   题

X

                          算 

——————————

题  题  题  题  题  题

每个文字都代表0到9的一个数字,要求找到相应的数字对应使这个等式成立。

1.问题分析

要是用手算这个等式的话估计不少人得骂人了,必须带进去一个个的试错,太麻烦了。但计算机不用担心这些,计算机强大的计算能力可以代替人工一个个的带入。所以我们就需要将每一个数字都带入试一遍到底哪一组数适配就可以了。

2.算法选择——穷举

这种将所有的情况都列举出来,最后再在每种情况中找到自己想要的结果的算法叫做穷举法。

穷举法一般的格式

for(i=x1;i<=x2;i++)
    for(j=y1;j<=y2;j++)
	    for(k=z1;k<=z2;k++)
		    if(i,j,k满足验证条件) 
		        printf(输出正确答案) 

3.开始编程

#include  //穷举法 
int main()
{
    int i1,i2,i3,i4,i5;  
	long multi ,result;  //输出结果为长整型。 
	for(i1=1;i1<=9;i1++)  //穷举法格式 
	{
		for(i2=0;i2<=9;i2++)
		{
			for(i3=0;i3<=9;i3++)
			{
				for(i4=0;i4<=9;i4++)
				{
					for(i5=0;i5<=9;i5++)
					
					{
						multi=i1*10000+i2*1000+i3*100+i4*10+i5;
						result=i5*100000+i5*10000+i5*1000+i5*100+i5*10+i5;
						if(multi*i1==result)
						{
							printf("n"); 
							printf("%5d%2d%2d%2d%2dn",i1,i2,i3,i4,i5);
							printf("X%12dn",i1);
							printf("______________n");
							printf("%3d%2d%2d%2d%2d%2dn",i5,i5,i5,i5,i5,i5);
						}
					}
				}
			}
		}
	}
	return 0;	
}

这个其实也没什么值得注意的,多练就好。

4.看运行结果

可以得出上题的结果。

算=7,法=9,描=3,述=6,题=5

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5580739.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存