卡西欧5800p计算器所有编程命令含义
- 格式:doc
- 大小:44.00 KB
- 文档页数:4
卡西欧5800P坐标正反算程序超好用5800P坐标正算反算程序U:“XO”起点的X坐标,V:“YO”起点的Y坐标,O:“SO”起点的里程桩号,G:“FO”起点的方位角,H:“LS”计算段线元的长度,P:“RO”线元起点的曲率半径,R:“RN”线元终点曲率半径,“Q ”线元图形信息(直线段Q=0,左偏Q=-1,右偏Q=1)以道路中线前进方向(即大里程方向)区分左右。
DY=ZB:LC:输入1为正算,既输入里程桩号和偏距算坐标,输入2为反算,既输入坐标算里程桩号和偏距。
S:“LC”?S:待求点的里程桩号,Z:“PJ”?Z:待求点的里程偏距(在中线上取零,左侧取负值,右侧取正值)。
1.当线元为直线时,其起点,终点的曲率半径为无穷大,以10的45次方代替。
2.当线元为圆曲线时,无论其起点,终点与什么线元相接,其曲率半径均等于圆曲线的半径。
3.当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次方代替,与圆曲线相接时,曲率半径等于圆曲线半径。
终点与直线相接时,曲率半径为无穷大,以10的45次方代替,与圆曲线相接时,曲率半径等于圆曲线半径。
4.当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值,与圆曲线相接时,曲率半径等于圆曲线半径,终点与直线相接时,曲率半径等于设计规定值,与圆曲线相接时,曲率半径等于圆曲线半径。
1.坐标正反算主程序A-ZBZS3U:“XO ”?U:V:“YO”?V:O:“SO”?O:G:“FO”?G:H:“LS”?H:P:“RO”?P:R:“RN”?R:“Q”?Q:(1÷P)->C:(P-R)÷(2HPR)->D:(180÷Π)->E:N:“DY=ZB:LC”?N:If N=1:Then Goto 1:Else Goto 2:IfEnd:Lbl1:S:“LC”?S:Z:“PJ”?Z:Abs(S-O)->W:Prog“SUB1”:“XS=”:X◢“YS=”:Y◢“FS=”:F-90◢Goto 1:Lbl 2:“X”?X: “Y”?Y:X->I:Y->J:Prog “SUB2”:S: “LC=”:O+W->S◢Z: “PJ=”:Z◢Goto 2:2.坐标正算子程序SUB10.1739274226->A:0.3260725774->B:0.0694318442->K:0.3300094782->L:1-L->F:1-K->M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD)))->X:V+W(Asin(G+ QEKW(C+KWD))+ Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD)))->Y:G+QEW(C+WD)+90->F:X+Zcos(F)->X:Y+Zsin(F)->Y:3.坐标反算子程序SUB2G-90->T:Abs((Y-V)cos(T)-(X-U)sin(T))->W:0->Z:Lbl0:Prog“SUB1”:T+QEW(C+WD)->L:(J-Y)cos(L)-(I-X)sin(L)->Z:If Abs(Z)<10^(-3):Then Goto 1:Else W+Z->W:Goto 0:IfEnd:Lbl 1:0->Z:Prog “SUB1”:(J-Y)÷sin(F)->Z:。
卡西欧5800P 线元法正反算程序1-JIN YU(主程序)Lbl 4: “1→ZS,2→FS?N(选择计算模式,1为正算,2为反算,3为超欠挖)N=1=>Goto 1:N=2=>Goto 2Lbl 1: “K=”?S:“P=”?Z:Prog “SJ-PM”: Abs(S-O) → W:Prog “SUB1-ZS”:“X=”:Locate4,4,X:“Y=”:Locate4,4,Y:F-90→F: “W=”: Locate4,4,F°◢Goto 4(正算-输入待求点里程K=、输入待求点偏距P=、显示待求点里程X=、显示待求点里程Y=、显示待求点里程设计高程H=)Lbl 2:“X=”?X:“Y=”?Y:Prog“SJ-PM”: X→ I: Y→J:Prog "SUB2-FS":O+W→S: “K=":Locate4,4, S:“P=":Locate4,4, Z:S→ K:Prog“SJ-GC”:“H=”:Locate4,4, H:F-90→F: “W=”: Locate4,4,F°◢Goto 4(反算-输入实测点X=、输入实测点Y=、显示实测点里程K=、显示实测点偏距P=、显示实测点的设计高程H=)SJ-PM(子程序名-平面线形数据库)If S ≥59227.681(线元起点里程):Then 2599818.013→U(线元起点X坐标):496887.918→V(线元起点Y坐标):59227.681→O(线元起点里程):208028’39”→G(线元起点方位角):100 →H(线元长度):1×1045→P(线元起点曲率半径):1×1045→R(线元终点曲率半径):0→Q(线元左右偏标志:左-1右1直0):IfEndIf S ≥59327.681(线元起点里程):Then 2599730.112→U(线元起点X坐标):496840.237→V(线元起点Y坐标):59327.681→O(线元起点里程):208028’39”→G(线元起点方位角):90 →H(线元长度):1×1045→P(线元起点曲率半径):750→R(线元终点曲率半径):-1 →Q(线元左右偏标志:左-1右1直0):IfEnd(注:有多个平面线形,依照上面的依次变更, 每多一个,就增加一个。
单圆曲线(YQXJS)“KO”?O: “X0”?A:“Y0”?B:“JDX”?X:“JDY”?Y:“FWJ”?J:“FO”?F:?N:?R:6→DimZ←┘(K0为输入起算点桩号),(X0为输入起算点X坐标),(Y0为输入起算点Y坐标),(JDX输入曲线所在交点X坐标,无输入0),(JDY为输入曲线所在的Y坐标,无输入0),(FWJ为输入起算点的方位角),(F0为输入交点处的转角,带正负号,当左转时在转角前加-;右转时在转角前加+),(N为转角方向,正输入+1,负输入-1),(R为输入曲线半径)Abs(F)÷2→G◢“T=”:Rtan(G)→T◢(计算切线长)“L=”:GRπ÷90→L◢(计算圆曲线长)“E=”:R÷cos(G)-R→E◢(计算外距,即交点到QZ点的距离)LbI 1←┘?K:180N(K-O)÷(πR)→V:2Rsin(0.5NV)→M←┘(K为输入待求点的桩号)V为带求点与起算点间的弦长说对应的圆心角“XZ=”:A+Mcos(J+0.5V)→Z[1]◢(计算出的中桩X坐标)“YZ=”:B+Msin(J+0.5V)→Z[2]◢(计算出的中桩Y坐标)tan-1((Z[2]-Y)÷(Z[1]-X))→U←┘If U<0:Then U+360→U:Else U→U:If End←┘“FW=”?U :U DMS◢(计算出的中桩与交点的方位角)?W:“XL=”:Z[1]-NWcos(J+V+90)→Z[3]◢(W为输入路半宽,计算出的左边桩X坐标)“YL=”:Z[2]-NWsin(J+V+90)→Z[4]◢(计算出的左边桩Y坐标)“XR=”: Z [1]+NWcos(J+V+90)→Z[5]◢(计算出的右边桩X坐标)“YR=”:Z[2]+NWsin(J+V+90)→Z[6]◢(计算出的右边桩Y坐标)特别注意:1.进行反向计算(大桩号往小桩号计算)时,起算点桩号应设为0;待求桩号与起算点距离多远桩号就为多少;3.起算点方位角应与起算点之前的线形所对应的方位角一致。
第 1 页卡西欧Fx-5800P计算器一、Fx-5800P编程命令1、基本操作命令(1)分隔语句。
不停止程序的执行。
(2)(3)(4)2、关系运算子3、转移命令(1) n。
第 2 页(2)及后面的所有见容。
<变量>值为零,则会跳过语句1和语句2以及执行该命令后的所有内容。
(3)<变量>值非零,则执行语句1,然后执行语句2以及后面的所有见容。
<变量>值为零,则会跳过语句1和语句2以及执行该命令后的所有内容。
(4)4、控制结构命令:(1)(2)之间语句的执行重复进行,每次执行控制变量都加1(从始值开始)。
当控制变量的值到达终值时,执行会跳至Next后面的语句。
如果Next后面没有语句,则停止程序的执行。
(3)第 3 页(4)5、子程序调用命令(1)从当前程序(主程序)执行另一个其它程序(子程序)。
最多可以嵌套10层子程序。
6、程序控制命令(1)(2) 从子程序返回调用此子程序的程序。
在主程序中,此命令会终止程序。
(3) 强制终止程序执行。
在子程序中执行此命令会终止所有执行,包括所有子程序和主程序。
7、输入/输出命令(1) 返回如下代码之一(对应按的最后一个键)。
如果未按键,则返回0。
8、显示屏幕命令(1) 显示为注释文本。
(2) 清除显示器中的所有表达式和计算结果。
(3)在指定的屏幕位置显示指定值或字符串。
9、逻辑运算子命令(1)运算两端的表达式(相等或不相等),并基于它们的逻辑积返回真或假。
(2)运算两端的表达式(相等或不相等),并基于它们的逻辑积返回真或假。
(3)运算后面紧邻的表达式(相等或不相等),并返回其非值。
10、清除命令(1)清除所有列表数据。
(2)将所有变量清零。
(3)清除所有矩阵存储器的内容。
(4)清除所有公式变量。
二、Fx-5800P涵数命令1、绝对值2、正弦涵数3、余弦涵数4、正切涵数第 4 页三、fx-5800P计算器编程1、线路坐标计算[XLJS](主程序)使用说明(1)功能计算线路中桩、边桩坐标。
CASIO fx-5800P程序计算器的按键说明按下SHIFT键后状态行显示S,表示将输入键上方橘色字符所注的功能;按下ALPHA键后状态行显示A,表示将输入上方红色字符所注的字母或符号;模式键:MODEfx-5800P有11种模式,计算器只能工作于所示11种模式的任一种模式下,进入模式菜单后,必须按数字键选择一种模式:COMP:普通四则计算和函数计算;(普通计算模式)PROG:定义程序名,在程序区域中输入、编辑、删除与执行程序;LINK:在两台5800间进行数据通讯;MEMORY内存管理;SYSTEM:显示与调整屏幕对比度设置或系统复位设置键:SETUPfx-5800P有14个设置选项,按EXIT键退出设置菜单,其中:MthI0:设置以数学分数格式显示,状态栏显示Math;例如:分数2/3LineI0:设置以线性格式显示;1/3=0.33333Deg:设置角度单位为“度”,状态栏显示D;一般情况下均用这个Rad:设置角度单位为“弧度”,状态栏显示R;Gra:设置角度单位为“哥恩”,状态栏显示G;Fix:设置以输入数字为小数位数的固定格式显示计算结果,状态栏显示FIX;BASE-N:设置BASE-N模式为有符号与无符号计算。
功能键:FUNCTION功能键菜单的作用是输入键盘上没有的数学函数、复数函数、程序命令、科学常数、角度变换命令、清除命令、统计计算命令、矩阵符Mat、用户自定义公式中的英文小写字母变量、希腊大小写字母变量的下标字符等,其中常用:Math:数学函数符;PROG:程序命令符。
返回键:EXIT:任何情况下按下EXIT键,返到上一步EXE键:确认键任何情况下按下EXE键,为确认键或执行下一步的意思。
1.公路铁路任意线型单元路线中桩边桩坐标及放样极坐标的通用计算程序(ZHYDLDY ZBJS)作者:琚新涛QQ:25425579一、线路中线的线型分析公路铁路线路按照线型分类,可分为直线、圆曲线线路和曲线线路。
一般情况下,缓和曲线是连接直线与圆曲线的过渡性曲线,该缓和曲线称为完全的缓和曲线。
在特殊的情况下(公路立交匝道),截取完全缓和曲线上的一段,其两端外连接两个不等半径的圆曲线,即将一个半径逐渐过渡到另一半径,这种缓和曲线称为不完全缓和曲线。
所以,缓和曲线分为完全的缓和曲线和不完全的缓和曲线两种。
那么,一条很长的公路铁路线路可划分为一个一个单一线型的线路单元。
即直线单元,圆曲线单元,完全缓和曲线单元和不完全缓和曲线单元。
各类线型线路单元具有各自不同的几何性质,直线单元式半径无穷大而曲率为零且始终保持不变的线型。
圆曲线单元是始终保持某一半径和相应曲率不变的线型。
缓和曲线单元是半径和曲率都处处不等且均匀渐变的线型,即半径和曲率随线路中线点位呈线性变化。
完全缓和曲线单元是将直线的零曲率均匀渐变到另一半径圆曲线曲率的线型,不完全缓和曲线单元是将某一半径圆曲线曲率均匀渐变到另一半径圆曲线曲率的线型。
于此可见,不完全缓和曲线路线是所有线型线路单元中最一般的线型单元。
LbI D:Fix 3:Deg:“GTL ZHY ZBZ FYJS”:”CZD ZBN(X)=”?R:”CZD ZB E(Y)=”?S:”DY QD ZBN(X)=”?A:”DY QD ZB E(Y)=”?B:”DY QDBJ(R1)=”?T:”DY QD LC(L1)=”?D:”DY QD QX FWJ=”?E:”DY ZD BJ(R2)=”?U:”DY ZD LC(L2)=”?G:”DYQD—ZD QXZX(Z=-1,Y=+1)=”?WWT→C:WU→F:0→I:0→J:(C-F)÷(2CF(G-D))→HLbI A:”FYD DY ZZ LC=”?O:IF O=-1:Then Goto C:IfEnd:If O<D:Then Goto B:IfEndIF O>G:Then Goto B:IfEnd“ZZ-BZ FXJ(Z-,Y+)=”?P:”ZZ-BZ PJ=”?Q:E+((O-D)÷C+H(O-D)2)r→V:If V<0:Then V+360→V:IfEndIf V≥360:Then V-360→V:IfEnd“ZZD QX FWJ=”:V▶DMS◢Rad:A+∫(cos(E。
1.Norm 1 指数显示Norm 2 小数显示2.?→x 只显示?字符+?→x 显示字符+??x 显示x?“字符”?x 显示字符+?有→则不显示该变量当前值3.(判断表达式)语句1 : 语句2。
如果判断表达式为真(或非零),则不跳过语句1.如果判断表达式为假(或是零),则会跳过语句1.4. If...then…else…ifend如果语句为真,则执行then(不执行else),然后执行ifend.如果语句为假,则执行else(不执行then),然后执行ifend.5. Break 中断语句中断For,Do,While循环,并从该循环的下个命令起继续运行6. Dsz使控制变量递减一,在变量的值为零时执行转移7. IszIsz<变量>:<语句1> <语句2>,变量应为A~Z以1 为增量逐次增加变量的值,当变量的值不等于0 时,执行语句1,否则执行语句28. ClsDsz<变量>:<语句1> <语句2>。
变量应为A~Z。
以1 为减量逐次减小变量的值,当变量的值不等于0 时,执行语句1,否则执行语句29. Locate 定位显示语句句法1:Locate <列数>, <行数>,<数值>句法2:Locate <列数>, <行数>,<表达式>句法3:Locate <列数>, <行数>, "字符串"fx-5800P 的屏幕最多可以显示4 行、16 列字符,因此定位语句中的列数值应为大于等于1、小于等于16 的整数,行数值应为大于等于1、小于等于4 的整数。
10. Lbi n ~ Goto n Goto n~Lbl n无条件转移至Lbi n 位置11. Getkey返回与上次按键相对应的代码,Getkey=12. DO ~ LpWhile循环语句Do <语句块> LpWhile<条件>先执行语句块,然后测试条件,条件为真时重复执行语句块,否则执行<条件>后的语句。
CASIO fx—5800计算器工程测量与公路测量程序1、坐标正算”X0=〃?X:”Y0=〃?Y:”I=〃?I:”J=〃?JX+ICos(J)→U:Y+ISin(J)→V”X=〃:U (待求点的X坐标)”Y=〃:V (待求点的Y坐标)说明:X0 Y0:已知点坐标I:两点的距离J:方位角2、坐标反算Lbl 0”X1=〃?X:”Y1=〃?Y:”X2=〃?U:”Y2=〃?VPol(U-X,V-Y):J<0 J+360→J”I=〃:I”J=〃:J DMSGOTO 0说明:X1Y1:第一点的坐标,X2Y2第二点的坐标,I:两点的距离,J:方位角3、圆曲线”X0=〃?X: ”Y0=〃?Y:”FWJ=〃?D:”QDHAO=〃?G: ”ZDHAO=〃?C: ”R=〃?R Lbl 1”DQHAO=〃?LL<G Or L>C GOTO 2”PY=〃?K180(L-G)÷(πR) →E2RSin(0.5E) →FReC(Abs(F),D+0.5E):Cls”X=〃:X+I+KCos(D+E+90) →A”Y=〃:Y+J+KSin(D+E+90) →BD+E→o:o<0 360+o→0o”FWJ=〃:o DMSGoto 1Lbl 2”END〃说明:X0Y0:起始点的坐标,FWJ:起始点的方位角,QDHAO:起点里程,ZDHAO终点里程,R:半径,DQHAO:待求点里程,PY:偏移量4、竖曲线”QZHAO =〃?J: ”H+B〃=?B:”I1=〃?C:”I2=〃?D:”R=〃?R:”T=〃?T:((D-C)÷100) ÷Abs((D-C) ÷100)→A:Abs(0.5R(D-C) ÷100)→S”T〃:SJ-T→XJ+T→YLbl 0”DQ=〃?LIf L<X:Then Goto 1:Else If L>Y:Then Goto 1:If End:If End”GC=〃:B+C(L-J) ÷100+A(L-J+T) ÷(2R) →HGoto 0Lbl 1”END〃说明:QZHAO:曲中点里程,H+B:曲中点高程,I1:第一坡度,I2:第二坡度,R:半径,T:切线长,DQ:待求点里程。
CASIO fx—5800计算器工程测量与公路测量程序1、坐标正算”X0=〃X:”Y0=〃Y:”I=〃I:”J=〃JX+ICos(J)→U:Y+ISin(J)→V”X=〃:U (待求点的X坐标)”Y=〃:V (待求点的Y坐标)说明:X0 Y0:已知点坐标I:两点的距离J:方位角2、坐标反算Lbl 0”X1=〃X:”Y1=〃Y:”X2=〃U:”Y2=〃VPol(U-X,V-Y):J<0 J+360→J”I=〃:I”J=〃:J DMSGOTO 0说明:X1Y1:第一点的坐标,X2Y2第二点的坐标,I:两点的距离,J:方位角3、圆曲线”X0=〃X: ”Y0=〃Y:”FWJ=〃D:”QDHAO=〃G: ”ZDHAO=〃C: ”R=〃RLbl 1”DQHAO=〃LL<G Or L>C GOTO 2”PY=〃K180(L-G)÷(πR) →E2RSin →FReC(Abs(F),D+:Cls”X=〃:X+I+KCos(D+E+90) →A”Y=〃:Y+J+KSin(D+E+90) →BD+E→o:o<0 360+o→0o”FWJ=〃:o DMSGoto 1Lbl 2”END〃说明:X0Y0:起始点的坐标,FWJ:起始点的方位角,QDHAO:起点里程,ZDHAO 终点里程,R:半径,DQHAO:待求点里程,PY:偏移量4、竖曲线”QZHAO =〃J: ”H+B〃=B:”I1=〃C:”I2=〃D:”R=〃R:”T=〃T:((D-C)÷100) ÷Abs((D-C) ÷100)→A:Abs(D-C) ÷100)→S”T〃:SJ-T→XJ+T→YLbl 0”DQ=〃LIf L<X:Then Goto 1:Else If L>Y:Then Goto 1:If End:If End”GC=〃:B+C(L-J) ÷100+A(L-J+T) ÷(2R) →HLbl 1”END〃说明:QZHAO:曲中点里程,H+B:曲中点高程,I1:第一坡度,I2:第二坡度,R:半径,T:切线长,DQ:待求点里程。
曲线任意里程中边桩坐标正反算(CASIO fx-5800P计算器)程序一、程序功能及原理1.功能说明:本程序由一个主程序(TYQXJS)和五个子程——正算子程序(SUB-ZS)、反算子程序(SUB-FS)等构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。
本修改版程序既可实现正算全线贯通,亦可实现反算全线贯通。
本程序在CASIO fx-5800P计算器运行。
2.计算原理:利用Gauss-Legendre 5点通用公式正算线路中边桩坐标、线外测点至曲线元起点和终点的垂距的符号是否相异(即Dca×Dcb<0=>该测点在其线元内)进行判断并利用该线元要素反算中桩里程、支距,最后计算出放样数据。
二、源程序1.主程序(TYQXJS)Deg:fix 3119→DimZ“INPUT(0) Or DATA(Else)”?ILbl 0:“1.SZ=>XY,2.XY=>SZ,3.TF=>CK,4.SD=>FY,5.TW=>FY”?NIf N=1 Or N=5:Then Goto 1Else If N=2 Or N=3 Or N=4:Then Goto 2Else Goto 3IfEnd:IfEndLbl 1:“K(m)=”?SIf S<0:Then Goto 0:IfEnd“JL(m)=”?ZIf Z≠0:Then “ANGLE→R(Deg)=”?M:IfEndIf I=0:Then Prog “DAT1”:Else Prog “DAT2”:IfEndS-O→W:If W<0:Then Goto 0:Else If W>H:Then Goto 0:IfEnd:IfEndProg “SUB-ZS”:Prog “SUB-GC”If Z<0:Then“XL(m)=”:X◢“YL(m)=”:Y◢If N=5:Then Prog “SUB-TW”:IfEndElse If Z>0:Then “XR(m)=”:X◢“YR(m)=”:Y◢If N=5:Then Prog “SUB-TW”:IfEndElse “X(m)=”:X◢“Y(m)=”:Y◢“Hs(m)=”:L◢“FWJ=”: F►DMS◢IfEnd:IfEndGoto 1Lbl 2:“X(m)=”?X:If X<0:Then Goto 0:IfEnd“Y(m)=”?YIf N=3 Or N=4:Then “H(m)=”?→Z[2]:IfEndX→Z[4]:Y→Z[5]:90→MIf I=0:Then Prog “DAT1”G+QEH(C+HD)→F:1→J:U→Z[8J]:V→Z[8J+1]G-M→A:F-M→B:Prog “SUB-ZX1”:Goto BG+M→A:F+M→B:Prog “SUB-ZX1”:Goto B:IfEnd0→J:Lbl A: Isz JZ[8J+3]-M→A:Z[8(J+1)+3]-M→B:Prog “SUB-ZX1”If Z[6]Z[7]<0:Then J→J:Prog“DAT1” :Goto B:IfEndZ[8J+3]+M→A:Z[8(J+1)+3]+M→B:Prog “SUB-ZX1”If Z[6]Z[7]<0:Then J→J:Prog “DAT1” :Goto B:Else Goto A:IfEndLbl B:Prog“SUB-FS”O+W→S:Prog “SUB-GC”“K(m)=”:S◢“Hs(m)=”:L◢“JL(m)=”:Z◢If N=3:Then Prog “WIDE”:IfEndIf N=4:Then Prog “SDFY”:IfEndGoto 2Lbl 3:“TYQXJS→END”2. 正算子程序(SUB-ZS)0.1184634425→A: 0.2393143352→B:0.2844444444→Z[1]:0.0469100770→K:0.2307653449→L:0.5→Z[3]U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Z[1]cos(G+QEZ[3]W(C+Z[3]WD))+Bcos(G+QE(1 -L)W(C+(1-L)WD))+Acos(G+QE(1-K)W(C+(1-K)WD)))→XV+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Z[1]sin(G+QEZ[3]W(C+Z[3]WD))+Bsin(G+QE(1-L)W(C+(1-L)WD))+Asin(G+QE(1-K)W(C+(1-K)WD)))→YG+QEW(C+WD)+M→FX+Zcos(F)→X:Y+Zsin(F)→YF-M→F:If F<0:Then F+360→F:IfEndReturn3. 反算子程序(SUB-FS)G-M→T:Abs((Y-V)cos(T)-(X-U)sin(T))→W:0→ZLbl C:Prog “SUB-ZS”T+QEW(C+WD)→L:(Z[5]-Y)cos(L)-(Z[4]-X)sin(L)→ZIf Abs(Z)<10-6:Then Goto D:Else W+Z→W:Goto C:IfEndLbl D:0→Z:Prog “SUB-ZS”:(Z[5]-Y)÷cos(F)→Z:Return4.高程计算子程序(SUB-GC)Prog “DAT3”0.5RAbs(0.01(E-D))→TIf E>D:Then 1→C:Else -1→C:IfEndIf S<A:Then -0.01D→W:Else 0.01E→W:IfEndAbs(A-S)→LIf L>T:Then B+WL→L:Else B+WL+C(T-L)2÷2÷R→L:IfEndReturn5. 垂距计算子程序(SUB-ZX1)(Z[5]-Z[8J+1])cos(A)-(Z[4]-Z[8J])sin(A)→Z[6](Z[5]-Z[8(J+1)+1])cos(B)-(Z[4]-Z[8(J+1)])sin(B)→Z[7]Return6.曲线元要素数据库:DAT1(两条线路,可扩充为多条线路)If I=0:Then Goto E: Else If I=2:Then Goto F:IfEnd:IfEndJ=1=>***→Z[8]:***→Z[9]:***→Z[10]:***→Z[11]:***→Z[12]:***→Z[13]:***→Z[14]:*** →Z[15]:IfEndJ=2=>***→Z[16]:***→Z[17]:***→Z[18]:***→Z[19]:***→Z[20]:***→Z[21]:***→Z[22]:***→Z[23]:IfEndJ=3=>***→Z[24]***→Z[25]:***→Z[26]:***→Z[27]:***→Z[28]:***→Z[29]:***→Z[30]:***→[31]:IfEnd………………………………………………..Goto HLbl F: J=1=>***→Z[8]:***→Z[9]:***→Z[10]:***→Z[11]:***→Z[12]:***→Z[13]:***→Z[14]:*** →Z[15]:IfEndJ=2=>***→Z[16]:***→Z[17]:***→Z[18]:***→Z[19]:***→Z[20]:***→Z[21]:***→Z[22]:***→Z[23]:IfEndJ=3=>***→Z[24]***→Z[25]:***→Z[26]:***→Z[27]:***→Z[28]:***→Z[29]:***→Z[30]:***→[31]:IfEnd(注:如有多个曲线元要素继续添加入数据库DAT1中)Goto GLbl E:“X0=”?U:“Y0=”?V:“S0=”?O:“F0=”?G:“LS=”?H:“R0=”?P:“RN=”?R:“Q=”?Q Lbl G:1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:Return7.隧道放样子程序:SDFY5.5→A:8.5→B:L+1.5→CIf I=1:Then -1→K:Else 1→K:IfEnd 给左右隧道符号赋值1.25K→F:4.25K→L:7.25K→K 给各圆心距路线的偏距赋值Z[2]-C→D 计算测点至圆心的高差D,If D>A:Then Goto 1:Else If D<0:Then Goto 2:IfEnd:IfEndZ-L→E:Abs(E)→E:√(D2+E2)→W:W-A→T: 计算测点至圆心的平距E,实测半径W“R(m)=”:W◢“DR(m)=”:T◢If E≤A:Then D-√(A2-E2)→C:E-√(A2-D2)→L 计算测点水平偏移量L、垂直偏移量C “Dh(m)=”:C◢显示测点垂直偏移量C“DL(m)=”:L◢显示测点水平偏移量LElse E-√(A2-D2)→L“DL(m)=”:L◢IfEnd:ReturnLbl 1Z-L→E:Abs(E)→E:√(D2+E2)→W:W-A→T: 计算测点至圆心的平距E,实测半径W“R(m)=”:W◢“DR(m)=”:T◢If E≤A:Then D-√(A2-E2)→C“Dh(m)=”:C◢IfEnd:ReturnLbl 2:Abs(D)→D:Abs(Z)→Z:Abs(K)→K:Abs(F)→FIf Z>K:Then Z-F→E:Else Z+K→E:IfEnd√(D2+E2)→W:W-B→T“R(m)=”:W◢“Rc(m)=”:T◢If E≤B:Then D-√(B2-E2)→C:E-√(B2-D2)→L 计算测点水平偏移量L、垂直偏移量C “Dh(m)=”:C◢显示测点垂直偏移量C“DL(m)=”:L◢显示测点水平偏移量LElse E-√(B2-D2)→L“DL(m)=”:L◢显示测点水平偏移量LIfEnd:Return8.曲线元要素判断数据库:DAT2(两条线路,可扩充为多条线路)If I=2:Then Goto A:IfEndIf S<第一线元终点里程:Then 1→J:Prog “DAT1”:ReturnElse If S<第二线元终点里程:Then 2→J:Prog “DAT1”:ReturnElse If S<第三线元终点里程:Then 3→J:Prog “DAT1”:ReturnElse If S<第四线元终点里程:Then 4→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndIf S≥第四线元起点里程And S<第五线元终点里程:Then 5→J:Prog “DAT1”:Return .................................Else If S<第n线元里程:Then n→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndLbl AIf S<第一线元终点里程:Then 1→J:Prog “DAT1”:ReturnElse If S<第二线元终点里程:Then 2→J:Prog “DAT1”:ReturnElse If S<第三线元终点里程:Then 3→J:Prog “DAT1”:ReturnElse If S<第四线元终点里程:Then 4→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndIf S≥第四线元起点里程And S<第五线元终点里程:Then 5→J:Prog “DAT1”:Return Else If S<第n线元里程:Then n→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEnd .................................9.高程数据库子程序:DAT3(两条线路,可扩充为多条线路)If I=0:Then Goto A:Else If I=2:Then Goto B:IfEnd:IfEndIf S≤46500:Then 46150→A:361.26→B:40000→R:-0.3→D:-1.2→E:ReturnElse If S≤47200:Then 46800→A:353.46→B:20000→R:-1.2→D:1→E:ReturnElse If S≤48400:Then 47500→A:360.46→B:20000→R:1→D:-1.6→E:ReturnElse If S≤49600:Then 48700→A:341.26→B:10000→R:-1.6→D:2.45→E:Return IfEnd:IfEnd:IfEnd:IfEndIf S>49600 And S≤50300:Then 49840→A:369.19→B:100000→R:2.45→D:2.8→E:Return Else If I=2:Then49800→A:368.21→B:150000→R:2.45→D:2.7→E:ReturnIfEnd:IfEndLbl A:“C PEG(m)=”?→A“C H(m)=”?→B“R(m)=”?→R“I1=”?→D“I2=”?→EReturnLbl B49800→A:368.21→B:150000→K:2.45→D:2.7→E:Return10.填方路基宽度检查子程序(WIDE)“WIDTH CHECK”◢“H→MID(m)=”?→A 起坡点与中桩高差常数“DIST→MID(m)=”?→B 起坡点与中桩距离常数“i=”?→C 路基填筑坡度CAbs(Z[2]-L+A)→DAbs(Z)-B-D→E“DL(m)=”:E◢显示实有宽度与应有宽度之差值Return11.坡口坡脚线坐标计算子程序:SUB-TW“TIANWA LINE”◢“DIST→MID(m)=”?A 起坡点与中桩距离常数“H→MID(m)=”?B 起坡点与中桩高差常数“T(1) Or W(Else)=”?C 填方边坡为1,其它为挖方边坡“i=”?E 填方或挖方边坡坡度Abs(Z)-A→D: DE→KIf C=1:Then L-B-K→W:Else L+B+K→W:IfEnd“JS H(m)=”:W◢计算出应有高程“SC H(m)=”?→D 输入实测高程D-W→T“GC(m)=”:T◢显示实测高程与计算高程的差异Return三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
卡西欧5800P计算器TYQXJSI坐标正反算(经过修改)1.主程序(TYQXJSI)10→DimZ:"1.SZ → XY":"2.XY → SZ":?N:"XO"? U:"YO"? V:"SO"? O:"FO"? G:"LS"? H:"RO"? P:"RN"? R:? Q: 1÷P→C:(P-R)÷(2HPR) →D:180÷π→E:If N=1: Then Goto 1: Else Goto 2: IfEndLbl 1:"DK? +?"? S:?Z: Abs(S-O)→W:If W>H or S<O: Then Stop: IfEnd : Prog "SUB1": "XS=”:X◢"YS=”: Y◢"FS=”:(F-90) →F:F DMS◢Goto 1Lbl 2:? X:? Y: "H"?A:X→I:Y→J:Prog "SUB2":If W>H or S<O: Then Stop: IfEnd :"DK?+?=”:O+W→S◢"Z”:Z◢Prog”NGDM”:Prog”OPRP1”:Goto 2IF N=2: Then If S<157188: Then Prog”OPRP1-100”:Else If S>157297: Then Prog”OPRP2-0”: ElseProg”OPRP1-50” IfEnd: IfEndElse If N=3: Then Prog”OPRP4”: IfEnd :IfEnd2. 正算子程序(SUB1)0.1739274226 →Z[3]:0.3260725774→B:0.0694318442→K:0.3300094782→L:(1-L) →F:(1-K)→M:(U+W(Z[3]cos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW (C+FWD))+ Z[3]cos(G+QEMW(C+MWD)))) →X:V+W(Z[3]sin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW( C+FWD))+ Z[3]sin(G+QEMW(C+MWD))) →Y:G+QEW(C+WD)+90→F:(X+Zcos(F))→X:(Y+Zsin(F))→Y注:Z[3]替代源程序A。
卡西欧5800p计算器所有编程命令含义
1.
Norm 1 指数显示
Norm 2 小数显示
2.
?→x 只显示?
字符+?→x 显示字符+?
?x 显示x?
“字符”?x 显示字符+?
有→则不显示该变量当前值
3.(判断表达式)语句1 : 语句2。
如果判断表达式为真(或非零),则不跳过语句1.
如果判断表达式为假(或是零),则会跳过语句1.
4. If...then…else…ifend
如果语句为真,则执行then(不执行else),然后执行ifend.
如果语句为假,则执行else(不执行then),然后执行ifend.
5. Break 中断语句
中断For,Do,While循环,并从该循环的下个命令起继续运行
6. Dsz
使控制变量递减一,在变量的值为零时执行转移
7. Isz
Isz<变量>:<语句1> <语句2>,变量应为A~Z
以 1 为增量逐次增加变量的值,当变量的值不等于0 时,执行语句1,否则执行语句2
8. Cls
Dsz<变量>:<语句1> <语句2>。
变量应为A~Z。
以1 为减量逐次减小变量的值,当变量的值不等于0 时,执行语句1,否则执行语句2 9. Locate 定位显示语句
句法1:Locate <列数>, <行数>,<数值>
句法2:Locate <列数>, <行数>,<表达式>
句法3:Locate <列数>, <行数>, "字符串"
fx-5800P 的屏幕最多可以显示4 行、16 列字符,因此定位语句中的列数值应为大于等于1、小于等于16 的整数,行数值应为大于等于1、小于等于4 的整数。
10. Lbi n ~ Goto n Goto n~Lbl n
无条件转移至Lbi n 位置
11. Getkey
返回与上次按键相对应的代码,Getkey=
12. DO ~ LpWhile循环语句
Do <语句块> LpWhile<条件>
先执行语句块,然后测试条件,条件为真时重复执行语句块,否则执行<条件>后的语句。
无,论条件是否为真,语句块至少被执行一次。
13. Pol
计算两坐标点之间距离,坐标为(4,4),与原点的距离就是POL(4,4)=4√2
14. Abs
求绝对值
15. Fix
取整数函数Fix(Rnd*11) ,取0 ~ 11的随机整数
16. Rnd
随机函数
17. 角度单位设置语句
Deg:设置角度单位为十进制度,按键输入Deg。
执行该语句后,状态行显示。
Rad:设置角度单位为弧度,按键输入Rad。
执行该语句后,状态行显示。
Grd:设置角度单位为哥恩,按键输入Grd。
执行该语句后,状态行显示。
18. Dim
定义变量
19. RCL
键面命令,Rcl+A 显示变量A的当前值
20. STO
键面命令,STO+A 给变量A赋值,显示→A
21. INS
键面命令,切换键标记样式,覆盖与插入切换
22. ←
键面命令,角度度分秒格式与小数格式转换
23. ▶DMS
常将反三角函数计算出的十进制角度转换成六十进制度分秒形式,cos-1(x)▶DMS
24. Pol
键面命令,将直角坐标转换为极坐标,Pol(△x,△y)
25. Rec
键面命令,将极坐标转换为直角坐标,Rec(r,θ)
26. CALC
键面命令,对一个表达式的变量代入不同的值
27. And,Or,Not
<条件1>And<条件2>,<条件1>与<条件2>同时为真时为真。
<条件1>Or<条件2>,<条件1>与<条件2>有一个为真时为真。
Not<条件>,<条件>为假时为真。
28. If~Then~Else~IfEnd
句法1:If <条件> Then <语句块>IfEnd
条件为真时执行Then 后的语句块,否则从IfEnd 后开始执行
句法2:If <条件> Then <语句块1>Else<语句块2>IfEnd
条件为真时执行语句块1,否则执行语句块2,然后执行IfEnd 后的语句
29. For~To~Step~Next
句法1:For <始值> <控制变量>To<终值> <语句块> Next控制变量的取值从始值开始,步长为1,重复执行语句块,直至终值为止。
一般始值小于终值,如果始值大于终值,则不执行语句块而是直接执行Next 后的语句。
句法2:For <始值> <控制变量>To<终值>Step<步长> <语句块> Next
它与For~To~Next 句法的功能相同,唯一区别是增加了步长语句Step
30. While~WhileEnd 循环语句
句法:While <条件> <语句块>WhileEnd
先测试条件,当条件为真时执行语句块,然后再测试条件,条件为真时重复执行语句块,直到,条件为假时执行WhileEnd 后的语句结束循环
31. Prog~Return 调子程序语句
句法:Prog "subfilename"
按键输入Prog。
fx-5800P 的子程序是独立于主程序的程序,它也保存在计算器内存中,主程序与子程序的变量都是全局的,子程序执行完成后通过Return 语句返回主程序,继续执行主程序中Prog 语句后的语句.
32. Return 返主程序语句
在子程序中应至少有一条Return 语句,当执行到该语句时,控制执行返回调用该子程序的主程序。
主程序中一般不应有Return 语句,若在主程序中使用了Return 语句,程序执行到该语句时会停止执行。
33.Stop 终止程序语句
程序被Stop 语句终止后就不再执行任何语句,通常用于调试程序设置临时中断点,程序调试通过后,将其删除。
34. 清除语句
①Cls:清除屏幕显示的文字、表达式及计算结果。
②ClrStat:清除统计串列List X,List Y,List Freq。
③ClrMemory:清除字母变量A~Z 与数值答案寄存器。
④ClrMat:清除矩阵Mat A~Mat F 与矩阵答案寄存器Mat Ans
的内容与维数。
⑤ClrVar:清除内置公式变量及用户自定义公式变量的值。
其中后四个语句为按(CLR)键调出清除语句菜单选择。
额外变量Z[n]的数值没有专门的语句命令清除,只能执行语句0 DimZ 清除。
35. 数值显示格式设置语句
Fix <n>:n 为0~9 间的整数,设置以n 位固定小数格式显示计算结果,按键输
入Fix。
执行该语句后,状态行显示FIX。
Sci <n>:n 为0~9 间的整数,设置以n 位固定小数科学格式显示计算结果,按键
输入Sci。
执行该语句后,状态行显示SCI。
Norm <n>:n 为1 或2,设置以正常格式显示计算结果,按键输入Norm。
ENG:其下有EngOn 与EngOff 两个语句,EngOn 为打开工程格式显示;按
键输入EngOn,执行该语句后,状态行显示ENG;EngOff 为关闭工程格式显示,按键输入EngOff,执行该语句后,状态行的ENG 消失。
36. END
结束程序运行。