c++程序求 ab * cde = adb * ce的方法有多少种,abcde取值为1-9 且不重复
答案:3 悬赏:40 手机版
解决时间 2021-01-28 03:14
- 提问者网友:骨子里的高雅
- 2021-01-27 15:57
c++程序求 ab * cde = adb * ce的方法有多少种,abcde取值为1-9 且不重复
最佳答案
- 五星知识达人网友:低音帝王
- 2021-01-27 16:22
按照你的写法, 有任何两个数重复时循环就结束了
可以该成这样
//36 * 495 = 396 * 45 = 17820
//27 * 594 = 297 * 54
#include
using std::cout;
using std::endl;
#include
int main()
{
int a,b,c,d,e,count=0;
for(a=1;a<=9;a++)
{
for(b=1;b<=9;b++)
{
if(b==a) continue;
for(c=1;c<=9;c++)
{
if(c==a || c==b) continue;
for(d=1;d<=9;d++)
{
if(d==a || d==b || d==c) continue;
for(e=1;e<=9;e++)
{
if(e==a || e==b || e==c || e==d) continue;
if((a*10+b)*(c*100+d*10+e)==(a*100+d*10+b)*(c*10+e))
{
count++;
cout << a<
}
}
}
}
}
cout< system("pause");
return 0;
}
可以该成这样
//36 * 495 = 396 * 45 = 17820
//27 * 594 = 297 * 54
#include
using std::cout;
using std::endl;
#include
int main()
{
int a,b,c,d,e,count=0;
for(a=1;a<=9;a++)
{
for(b=1;b<=9;b++)
{
if(b==a) continue;
for(c=1;c<=9;c++)
{
if(c==a || c==b) continue;
for(d=1;d<=9;d++)
{
if(d==a || d==b || d==c) continue;
for(e=1;e<=9;e++)
{
if(e==a || e==b || e==c || e==d) continue;
if((a*10+b)*(c*100+d*10+e)==(a*100+d*10+b)*(c*10+e))
{
count++;
cout << a<
}
}
}
}
}
cout<
return 0;
}
全部回答
- 1楼网友:山河有幸埋战骨
- 2021-01-27 17:08
逻辑错误,b为什么要从2开始,C为什么要从3开始,都改为1就行了
- 2楼网友:長槍戰八方
- 2021-01-27 16:43
简单修改了一下。#include
#include
using std::cout;
#include
int main(){
int a,b,c,d,e,count=0;
for(a=1;a<=9;a++)
for(b=1;b<=9;b++)
{
//if(b==9)b=1;
if(b==a)continue;
for(c=1;c<=9;c++)
{
//if(c==9)c=1;
if(c==a || c==b)continue;
for(d=1;d<=9;d++)
{
//if(d==9)d=1;
if(d==a || d==b || d==c)continue;
for(e=1;e<=9;e++)
{
//if(e==9)e=1;
if(e==a || e==b || e==c || e==d)continue;
if((a*10+b)*(c*100+d*10+e)==(a*100+d*10+b)*(c*10+e))
{
printf("%d%d * %d%d%d = %d%d%d * %d%d ", a, b, c, d, e, a, d, b, c, e);
count++;
}
}
}
}
}
cout<
return 0;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯