主题:数字游戏1
QQ331373582
[专家分:1500] 发布于 2005-09-06 20:12:00
编一程序,从键盘上输入整数a,b,c(-100<b,c<100,a>0)后,显示出式子ax2+bx+c分解为两个整式(所有项的系数都为整数)之积的结果,例如:
输入:2 -3 -2
输出:(2x+1)(x-2) 或 (x-2)(2x+1) (即显示一个式子即可)
如不能分解成题目要求的式子,就显示“NO”。
回复列表 (共5个回复)
沙发
lzl1403 [专家分:1670] 发布于 2005-09-09 21:06:00
这个……数学问题吧!我记得好像ax^2+bx+c可分解成a(x-x1)*(x-x2),其中x1,x2为方程ax^2+bx+c=0的两个根,然后循环把a分解为a=a1*a2判断一下a1*x1、a2*x2是否为整数,是则代入输出,否则输出“no”
板凳
林记 [专家分:1680] 发布于 2005-09-10 16:44:00
其实不用分解的..
只要把x1和x2的分子分母约分,然后看两个分母相乘是否整除a就行了
3 楼
lzl1403 [专家分:1670] 发布于 2005-09-10 21:58:00
楼上的好办法!
4 楼
林记 [专家分:1680] 发布于 2005-09-10 22:25:00
承让承让
5 楼
chenzhong [专家分:250] 发布于 2005-09-11 11:12:00
好象是十字相乘
把a,c各分解成两个整数相乘。a=i1*i2 c=j1*j2 若i1*j1+i2*j2=b则可分解成
(i1*x+j2)(i2*x+j1)
我来回复