-
-
[旧帖]
[讨论]我觉得这道题出错了,应该无解啊!
0.00雪花
-
发表于:
2013-3-26 16:31
1452
-
[旧帖] [讨论]我觉得这道题出错了,应该无解啊!
0.00雪花
题目:809*??=800*??+9*??+1 其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。
1.程序分析:
2.程序源代码:
output(long b,long i)
{ printf("\n%ld/%ld=809*%ld+%ld",b,i,i,b%i);
}
main()
{long int a,b,i;
a=809;
for(i=10;i<100;i++)
{b=i*a+1;
if(b>=1000&&b<=10000&&8*i<100&&9*i>=100)
output(b,i); }
}
答案给的是上面的源码,我觉得不对啊,和题目要求相差甚远啊!
1、b>=1000&&b<=10000,需要这个判断吗?
2、题目要求809*??=800*??+9*??+1,怎么可能成立?!
根据乘法结合律,809*??=(800+9)*??+1=809*??+1,根本不可能成立啊?
3、也许是我理解有误,希望有朋友可以指出我的理解错误。还有,如果是题目错了,应该怎么改?
[课程]Linux pwn 探索篇!