TI-BASIC中的二次方程求解器返回错误的根

时间:2017-05-12 01:12:39

标签: math quadratic ti-basic

当我在高中时,我想出了如何编程我的TI-84 Plus计算器为我做二次方程式。就像我穿的两双鞋一样,我在期末考试前删除了这个程序。我正在尝试重新创建该程序,但它运行不正常。这是我的代码:

:Prompt A, B, C
:(-B+√(B²-4AC))/2A→Y
:(-B-√(B²-4AC))/2A→Z
:Disp Y
:Disp Z

对应计算器上的 STO> (商店)按钮,允许用户为给定的字母变量设置值。)

据我所知,这个应该有效。数学和括号似乎是有序的,Prompt函数有效(在程序完成后,要求计算器打印A,B和C匹配上次运行程序时存储的值)。

当我要求它计算我已经知道答案的二次方程时,它给了我有趣的数字。输入A=1B=-3C=2should return x-intercept values of 1 and 2,返回2和0。 x - 接受0 =3x²-10x + 7 are 1 and 7/3,但计算器返回21和0.我现在无法重现它,但是这个程序也返回了一些想象中的数字应该没有。

这段代码有什么问题?数学运算(将第二行和第三行代码输入计算器以计算,而不是程序中的代码行,在变量中存储值后确实返回正确的值),Prompt和{{ 1}}功能工作;这有什么不对?

1 个答案:

答案 0 :(得分:2)

行动秩序再次袭来。表达式

(-B+√(B²-4AC))/2A

正在被解析为

((-B+√(B²-4AC))/2)*A

将括号添加到/(2A)以解决此问题。