我的 TI-84 Plus C Silver Edition 计算器上的 TI BASIC 中有一个小代码,它将根据患者的体重确定正确的药物剂量。例如,如果阿司匹林的剂量为每公斤患者体重 5 毫克(不是),那么代码应该告诉我给 100 公斤的患者服用 500 毫克阿司匹林。但是,该代码正在解决所有可能的药物问题。这里是:
PROGRAM:DRUG1
:Input "PATIENT WEIGHT: ",W
:Input "AGENT NAME: ",A
:If A=IPPI
:Disp "DOSAGE",W*2
:If A=NEVO
:Disp "DOSAGE", W*0.5
所以在这种情况下,这两种药物是IPPI
和NEVO
。如果我给一个 100 公斤的患者体重,并选择IPPI
,那么我希望看到
DOSAGE 200
然而,我所看到的是
DOSAGE 200
DOSAGE 50
所以显然两个“if”语句都在运行,即使我只给出了一个值(IPPI
)。[当我设置A
为NEVO
] 时发生同样的错误。
我也尝试将这两个If
语句都包含在内Then...End
,因此代码如下所示:
PROGRAM:DRUG1
:Input "PATIENT WEIGHT: ",W
:Input "AGENT NAME: ",A
:If A=IPPI
:Then
:Disp "DOSAGE",W*2
:End
:If A=NEVO
:Then
:Disp "DOSAGE", W*0.5
:End
但这没有任何改变。我对 BASIC 很陌生,所以我确定有一个我看不到的简单错误,但我现在很难过。