TI-Basic Z80 编程/错误
外观
在 TI-84 上编程时,计算器会假设编写的代码有效。如果在执行代码时发现意外标记或遇到其他无效语句,TI-84 会抛出错误。计算器将停止执行程序中的代码,并在屏幕上显示错误类型。错误分为两种:语法错误和运行时错误。
例如,考虑以下示例
:Output(1,"TI84")
的语法Output(命令期望两个整数,然后是一个字符串。在此示例中,第二个参数是字符串,计算器不知道如何解释它。在这种情况下,计算器会抛出错误
ERR:ARGUMENT 1:Quit 2:Goto
代码执行停止,并显示一个菜单。第一个选项退出程序并返回到主屏幕。第二个选项将打开代码编辑器并滚动到代码中发生错误的行。
第二种错误是运行时错误。这些错误不一定可以通过代码的外观来检测。考虑以下示例,它显示输入值的倒数
:Prompt A
- Disp A-1
代码在大多数情况下都能正常工作
A=?4 .25
但是,考虑当用户输入0
时
A=?0 ERR:DIVIDE BY 0 1:Quit 2:Goto
这种行为可能是不可取的,因为如果发生错误,代码将停止执行,不会继续执行。因此,在考虑计算和语句时,必须考虑所有极端情况。在这种情况下,在Disp之前添加一行:If A≠0
可以防止错误发生。
运行时错误不一定必须显示错误才能是错误。例如,一个应该显示字母表中偶数字母的程序,但实际上显示的是字母表中奇数字母,就会出现运行时错误,因为程序没有按预期工作。这些错误可能是最难修复和最容易修复的错误!
检查以下示例,确定出现的错误类型,并给出解决错误的修复方法。
以下程序应该将 10 个随机数存储到L1中,但包含错误。找到、识别并修复错误。
- 0→dim(L1
- For(I,1,10
- rand→L1[I]
- End
解决方案
|
---|
错误在第 3 行。给定程序使用方括号([和])而不是圆括号。修复了错误的相同程序
|
在此示例中,程序应该输出L1中的最大数字(此程序假设L1).
- -9E99→L
- For(A,1,dim(L1
- If L1(A)>L
- A→L
- End
- Disp L
解决方案
|
---|
错误在第 4 行。给定程序将最大数字的索引存储到L中,而应该存储值本身。修复后的程序
将来,直接使用max(. |