У меня есть небольшой код в TI BASIC на моем калькуляторе TI-84 Plus C Silver Edition, который определяет правильную дозировку лекарств в зависимости от веса пациента. Например, если аспирин назначается в дозе 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
поэтому, по-видимому, выполняются оба оператора «если», хотя я указал только одно значение (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, поэтому я уверен, что есть простая ошибка, которую я не вижу, но в данный момент я в тупике.