看下面的算式:
□□ x □□ = □□ x □□□它表示:两个两位数相乘等于一个两位数乘以一个三位数。如果没有限定条件,这样的例子很多。但目前的限定是:这9个方块,表示1~9的9个数字,不包含0。该算式中1至9的每个数字出现且只出现一次!比如:46 x 79 = 23 x 15854 x 69 = 27 x 13854 x 93 = 27 x 186…注意:左边的两个乘数交换算同一方案,不要重复输出!不同方案的输出顺序不重要
//用1-9填数□□ x □□ = □□ x □□□
#include<iostream>using namespace std;int main(){ int a,b,c,d,e,f,g,h,i; for(a=1;a<=9;a++){ for(b=1;b<=9;b++){ for(c=1;c<=9;c++){ for(d=1;d<=9;d++){ for(e=1;e<=9;e++){ for(f=1;f<=9;f++){ for(g=1;g<=9;g++){ for(h=1;h<=9;h++){ for(i=1;i<=9;i++){ if(a+b+c+d+e+f+g+h+i==45&&a*b*c*d*e*f*g*h*i==362880){ if((10*a+b)*(10*c+d)==(10*e+f)*(100*g+10*h+i)){ if((10*a+b)<(10*c+d)){ cout<<a<<b<<"×"<<c<<d<<"="<<e<<f<<"×"<<g<<h<<i<<endl; } } } } } } } } } } } } return 0;}![在这里插入图片描述](https://img-blog.csdnimg.cn/20200321221924258.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NocmlzbGVlcXVlZW4=,size_16,color_FFFFFF,t_70)