cnCalc计算器论坛

 找回密码
 注册
搜索
查看: 5780|回复: 9

[Nspire] Nspire编程指南 4月1日修订版 V3

[复制链接]
发表于 2010-3-27 15:36:36 | 显示全部楼层 |阅读模式
The Programming Guide for TI-nspire修订版 V3
作者:Bruce55
最后更新:4月1日
For OS 2.0.0.1188 本教程的大部分内容可能可以用于其他版本的OS,请大家亲身实践。如果教程有什么错误,欢迎回帖指正。
1.关于程序的结构
程序头:Define 程序名(形参表)=
程序体:Prgm
          Block
        EndPrgm
其中的程序头用于定义程序的名称、所用于的库、对应参数
程序体,顾名思义,是程序的主体部分,Block是指程序块,也就是你写具体代码的地方。
2.关于语句的格式
程序语句是写在Block内的,下面介绍几种常用的数据类型的赋值、调用方法。
  赋值的方式:Var:=expr, String, Matrix, List...变量一般无需声明,如果你是要在function中使用局部变量,那么可以使用Local 变量名来实现。
  调用方式:
    string(字符串)类型可以直接调用,例如
      str:="Hello World!"
      Disp str
    即可显示Hello World!这个字符串,只是,在字符串的外面会套上一对双引号,可以尝试使用Text代替Disp弹出对话框显示。
    expr类型的变量可以直接参与运算,输出方式和str雷同。
    Matrix和List类型的变量可以参与整体运算,也可以单个元素进行运算。
      mat1:=[[1,2,3,4][2,1,4,3]] 将一个新的Matrix赋值给mat1
      mat1[2,1]:=3               在这里,mat1的第二行第一个元素变成了3,整个矩阵变成[[1,2,3,4][3,1,4,3]]
      mat2:=mat1                 现在mat2的内容就跟Mat1一样了
      Disp mat2[2,1]             运行的结果就是显示3
在mat只有一行的情况下可以直接以mat1[1]的方式调用,List的调用方式相同,只是list只能定义长度,却不能定义行数,这点就是和Matrix的主要不同。list的输入格式为mat1:={1,5,2,3,5}。新的Mat、List都可以通过函数来实现。如:mat1:=newMat(2,3)。关于矩阵和列表的各种函数可以在Catalog的第二页中找到,我就不具体说了。
关于数据的读取,可以通过在形式参数表中定义arguement来实现,也可以通过Request(RequestStr)函数来实现。格式为
  Request "在屏幕上显示的提示",var
  此处的Var也可以换成一个function的名字+实际参数表
  在此处读取到的数据为数学类型数据,如果需要读取string类型,那么可以使用RequestStr来实现,不过Requeststr貌似不支持function调用。这些功能的具体用法可以到Catalog中翻阅(就是那本书的按钮)。
  在程序中可以直接使用数学函数,所有函数的使用方法可以在Catalog中找到,底下有个示例格式可以参考,有些可以翻页。
不同的数据类型的转换可以使用expr、string函数来转换,List和Matrix的转换好像需要用到额外的库,我就不说了。ord函数可以得到字符的ascll码,char函数可以将ascll码转为字符。
同一个文档中的程序是可以互相直接调用的,不同的文档之间的调用方式为 Doc名/程序或函数名(实参表)
3.程序的语句查错和储存
程序在编写完毕后可以通过Menu-Check Syntax&Store-Check Syntax&Store(快捷键Ctrl+B)进行检查和储存。要注意的是,对文档中的程序进行修改后,不储存是没有效果的,一定要Store。Syntax检查只是语法错误检查。
4.程序的调用
程序编写完毕后,在当前文档的其他页面中可以直接调用,包括Calculator、表格等。
调用的格式为 程序名(实参表)
5.库的概念
  也许大家下载了别人编写的Lib,在Refresh Libraries(Ctrl-房子-6)操作后就可以在Catalog的第六页看到并调用了。不少人问,怎么做到呢?
其实很简单。在Create新程序的时候,将Library Access改成LibPub就可以了。已经写好的程序可以在Menu-Action-Change Library Access中修改。大家可以看到,内置的函数在Catalog中可以看到一个简介或者示例,在自己写的程序中也可以加上去。Menu-Action-Insert Comment可以在程序中插入注释。一般在程序的开头,程序的编写者会写上程序的使用方法、撰写日期、修订版本号、作者等。第一个Comment中的内容是作为显示在Catalog中的内容的,大家自己写吧。
更多的功能有待大家自己摸索啦。
6.给Lib编写者的建议
某些人看了教程,就摩拳擦掌按耐不住了,这里给大家一个编写的建议。
一个Doc可以分好几个Problem,一个Problem可以分好几页。
在这里,我建议大家在P1.1用Note程序写个简介,也可以写上自己的名字、fxesms论坛之类的东西宣传下。在P1.2中写个Help,如各个程序的使用方法、用途等。在P2.1中自己敲几个Example进去,让用户容易学会。这招是在各大外国牛人的Lib中学来的,TI的教学文档中也是类似。
7.关于程序的删除
上回imath问我关于删除程序的问题,程序在内存中作为变量存在,可以通过“delvar 变量名”的方法删除。
未完待续。。。

评分

参与人数 1金钱 +3 收起 理由
zasdfgbnm + 3 谢谢分享

查看全部评分

 楼主| 发表于 2010-3-27 15:40:45 | 显示全部楼层
声明,本指南开始与几天前,凑巧和某人的撞上了
发表于 2010-3-27 22:12:22 | 显示全部楼层
恰巧。。
内容都和我差不多。。
不过我的文章条理性没你那么清楚。。。
发表于 2010-3-28 11:57:11 | 显示全部楼层
顶,继续
 楼主| 发表于 2010-3-28 12:27:25 | 显示全部楼层
恰巧。。
内容都和我差不多。。
不过我的文章条理性没你那么清楚。。。
Elatha 发表于 2010-3-27 22:12

所有的编程书的内容都差不多的噢
 楼主| 发表于 2010-4-1 22:03:48 | 显示全部楼层
已经更新。有错误和不足请指出
发表于 2010-9-24 14:52:34 | 显示全部楼层
不要算我挖坟……顶起……麻烦版主给个置顶什么的……现在问NS的人太多了……我的引导帖还是别置顶了……我要么再写一个新的,老的不是很好用。
发表于 2010-9-24 19:59:39 | 显示全部楼层
ms我上次翻译过一半的那个东东和这个很像……
发表于 2010-10-16 10:03:37 | 显示全部楼层
楼主继续呀,正学呢
发表于 2011-1-14 17:28:43 | 显示全部楼层
来学习来了。。。加油楼主j_0003.gif
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cnCalc计算器论坛

GMT+8, 2024-3-28 21:18 , Processed in 0.068297 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表