永发信息网

C++循环的一些问题

答案:1  悬赏:20  手机版
解决时间 2021-04-25 20:59

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int a,b,c,d,e,f,g,h,i;
float r;
int p1,p2,p3,p4,p5,p6,p7,p8,p9;
int j[9]={1,2,3,4,5,6,7,8,9};
for (p1=0;p1<=8;p1++)
{
a=j[p1];
for (p2=0;p2<=8;p2++)
{
if(p1=p2) continue;
else b=j[p2];
for (p3=0;p3<=8;p3++)
{
if(p2=p3) continue;
c=j[p3];
for (p4=0;p4<=8;p4++)
{
if(p3=p4) continue;
d=j[p4];
for (p5=0;p5<=8;p5++)
{
if(p4=p5) continue;
e=j[p5];
for (p6=0;p6<=8;p6++)
{
if(p5=p6) continue;
f=j[p6];
for (p7=0;p7<=8;p7++)
{
if(p6=p7) continue;
g=j[p7];
for (p8=0;p8<=8;p8++)
{
if(p7=p8) continue;
h=j[p8];
for (p9=0;p9<=8;p9++)
if(p8=p9) continue;
i=j[p9];
r=a/(b*10+c)+d/(e*10+f)+g/(h*10+i);
if (r==1)
cout<<"the answer is:"<<a<<"/"<<b<<c<<"+"<<d<<"/"<<e<<f<<"+"<<g<<"/"<<h<<i<<"="<<r<<endl;
else {;}
continue;
}}}}}}}}
return 0;
}

题目是1到9的数,不能重复使用,由三个分式相加,结果等于1.分子为一位数,分母为两位数。求三个分式

最佳答案

LZ提出的问题在本质上是求全排列的问题。


求全排列的算法多采用递归,详细的参考代码用“全排列”和“C语言”这两个关键词在Google上搜一下就能找到。


此外解决这个问题里要特别注意一点,要用乘法代替除法。计算机内部进行浮点运算是有误差的,而题目要求是这三个分数的和恰好等于一,所以不能把分数化成小数计算,而是要先求出三个分母的最小公倍数,而后统一分母,在将分子求和。


LZ给出的代码作为试题答案的话,是一分也得不到的。


相信有了这些提示,LZ自己能很快完成这个题目的了。

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
在word中进行文字编辑时,有时会出现打完一段
叶亮舞蹈地址有知道的么?有点事想过去
QQ三国代练
买了个55剑魂,还没觉醒,机械牛和王者遗迹都
振华OBEE5999能下载什么类型的游戏啊
初三毕业留言语录幽默,初三毕业留言语录唯美
杭州钓鱼科技园这个地址在什么地方,我要处理
人到底能跳多高?
想开养老院,我应该提前做些什么?
施公奇案,枕仙小牛子个宝贝系咩吖?我无睇完
什么是DOS操作系统
大明,等级对材料暴率有影响吗?比如20级打20
大饼在化学是什么意思,狗都吃饼子么?
qq字体怎样变大字
吉的堡英语南康校区我想知道这个在什么地方
推荐资讯
金福超市这个地址在什么地方,我要处理点事
梦见抱起死去的父亲,是代表着什么?
路由器怎么用
你知道驯龙到重庆的车有几个?
传奇世界大月光宝盒释放的经验元神可以得多少
那里有破产油厂植物油花生油等其他油脂?
nine west上海专卖店在哪里恒隆附近
大话2仙器合成!
专业汽车维修和业余汽车维修有什么差别呢?
有什么快速有效还健康的减肥方法
形容说话伤人令人心寒
湖北美的空气能热水器代理在哪里
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?