当我在高中时,我想出了如何编程我的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=1
,B=-3
,C=2
,should return x-intercept values of 1 and 2,返回2和0。 x - 接受0 =3x²-10x + 7 are 1 and 7/3,但计算器返回21和0.我现在无法重现它,但是这个程序也返回了一些想象中的数字应该没有。
这段代码有什么问题?数学运算(将第二行和第三行代码输入计算器以计算,而不是程序中的代码行,在变量中存储值后确实返回正确的值),Prompt
和{{ 1}}功能工作;这有什么不对?
答案 0 :(得分:2)
行动秩序再次袭来。表达式
(-B+√(B²-4AC))/2A
正在被解析为
((-B+√(B²-4AC))/2)*A
将括号添加到/(2A)
以解决此问题。