如何将值附加到列表然后遍历列表?

时间:2016-08-21 01:09:45

标签: list ti-basic

我正在尝试为TI-84编写一个基本程序,在2d平面上找到多边形区域。作为参考,我已经多次在python中写过这个,这就是它的作用:

GlobalFilters.Filters.Add(new MyCustom());

这只是常规数学中显示的非常基本的算法:http://www.mathopenref.com/coordpolygonarea.html

现在当我尝试在TI-Basic中编写相同的东西(使用TI Connect应用程序并发送到计算器)时,它会在对其中一个列表的第一次引用时返回语法错误; "检查输入的所有参数"。这条线被星号包围着。评论不在实际代码中

x_list,y_list,verts,tot_1,tot_2=[],[],int(input("How many vertices are on the polygon: ")),0,0 //sets vars to defaults and gets num of vertices
for i in range(verts): //gets X and Y values of each point for num. of vertices
    x_list.append(float(input("X value of point %s: " % str(i+1)))) //appends x value given to x list
    y_list.append(float(input("Y value of point %s: " % str(i+1))))  //appends y value given to y list
for ind in range(verts-1):
    tot_1 += (x_list[ind]*y_list[ind+1])-(y_list[ind]*x_list[ind+1]) 
print(str(abs((tot_1)/2))) //prints area: abs value of total over two

当通过将L1更改为list1字符而L2更改为list2字符来更改计算器上的代码时,它所做的只是返回值12.5 *顶点数-2。我的问题是:

  1. 如何在计算机代码中表示列表?当我在代码中写入L1时,它实际上并不是我认为的内置列表变量,而是导致语法错误的原因。我想。
  2. 我是否需要重置列表变量?我第一次测试它时,12.5 *顶点-2工作,所以它只是永久地将列表变量设置为,并且现在当它在程序的后续运行中添加列表时,它永远不会到达那些索引?< / LI>
  3. 代码是否存在任何导致其无法正常工作的缺陷?我对TI-Basic完全陌生。

2 个答案:

答案 0 :(得分:0)

得到它,我很傻。

1st,使用ti-connect

中语法参考给出的列表变量

第二,第二个for循环中的算法是错误的。

答案 1 :(得分:0)

  1. 使用2ND键输入列表变量。

  2. 要重置列表,有两种方法:在程序结束时放入DelVar L1以删除变量(在PRGM菜单中找到DelVar),或者,如果如果要保留变量但仍然删除内容,可以使用0→dim(L1)将其大小设置为零来清除程序开头的列表(在“列表”菜单中找到dim()。最好让程序自行清理并在运行后删除不必要的变量。

  3. 您似乎已经自己想出了算法。

  4. 欢迎使用TI-BASIC!