fx5800小程序.docx

上传人:b****8 文档编号:29868851 上传时间:2023-08-03 格式:DOCX 页数:14 大小:24.32KB
下载 相关 举报
fx5800小程序.docx_第1页
第1页 / 共14页
fx5800小程序.docx_第2页
第2页 / 共14页
fx5800小程序.docx_第3页
第3页 / 共14页
fx5800小程序.docx_第4页
第4页 / 共14页
fx5800小程序.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

fx5800小程序.docx

《fx5800小程序.docx》由会员分享,可在线阅读,更多相关《fx5800小程序.docx(14页珍藏版)》请在冰豆网上搜索。

fx5800小程序.docx

fx5800小程序

5800计算器由坐标计算面积小程序

ClrMemory:

1→N:

LbI0:

E:

F:

"XO"?

X:

"Y0"?

Y:

(XF-EY)/2→G:

Q+G→Q:

X→E:

Y→F:

Abs(Q)→S:

Fix1:

"  S=":

Locate6,4,S▲Norm2:

"  N=":

Locate6,4,N▲N+1→N:

Goto0:

(说明:

至少输入三点坐标,才能计算正确的面积,N为了计输了的点数)

 

线路坐标正反算,竖曲线计算及边坡放样程序

坐标计算程序

可计算中边桩及进行坐标反算,边坡放样

PAN(主程序):

LbI0“1.SZ=>XY,XY=>SZ”:

?

N

IfN=1:

ThenGoto1:

IfEnd

IfN=2:

ThenGoto21:

IfEnd

LbI1:

“DKI=”?

S:

S>终止桩号=>Goto1:

S<起始桩号=>Goto1:

“BJ=”?

Z:

Prog“PAN-1”:

Prog“PAN-2”:

IfZ=0:

Then90→T:

EIse“PJ=”?

T:

IfEnd

"XS"=X◢

"YS"=Y◢

"FS"=F-90▲DMS◢

Goto1

LbI2:

“DKI=”?

S:

S>终止桩号=>Goto2:

S<起始桩号=>Goto2:

0→Z:

90→T:

Prog“PAN-1”:

Prog“PAN-2”:

“XC=”?

N:

"YC"=?

E:

Prog“PAN-3”

IfI>0:

Then“YOU,I=”:

I◢IfEnd

IfD<0:

Then“ZUO,I=”:

I◢IfEnd

"ZHUANG,HAO"=K◢

Goto2

PAN-1:

(平曲线数据库)

IfS<(线元终点桩号):

Then线元起点桩号→O:

线元终点桩号→H:

线元起始切线方位角→G:

线元起点坐标→X:

线元起点坐标→Y:

线元起点半径→P:

线元终点半径→R:

偏转方向常量→Q:

IfEnd

………………………………………………..

Q值当线元向左偏时输负值,当线元向右偏时输正值。

当线元与直线相接时半径输10的45次方,与圆曲线相接时半径输圆曲线半径。

PAN-2:

(平曲线正算程序)

1÷P→C

(P-R)÷(2(H-O)PR)→D

180÷∏→E

Abs(S-O)→W:

0.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

Return

PAN-3:

(平曲线反算程序)

0→Z:

90→T:

Pol(N-X,E-Y)

IfJ<0:

ThenJ+360→J:

IfEnd

F-J→C:

:

S+IsinC→K:

IcosC→I

Return

GotoD

PAN-4:

(竖曲线计算子程序)

Prog“PAN-5”:

Q-T→C:

Q+T→D

IfS≤C:

ThenGoto1:

EIse

IfS

ThenGoto2:

EIse

IfS

ThenGoto3:

IfEnd:

IfEnd:

IfEnd

LbI1:

E+(Q-S)A→H:

Goto4

LbI2:

E+(Q-S)A+(S-C)2/2/R→H:

Goto4

LbI3:

E+(S-Q)B+(S-D)2/2/R→H:

Goto4

LbI4:

H→H:

Return

PAN-5:

(竖曲线数据库,支持断链)

IfS=84100:

Then84100+3.45→S:

Return:

IfEnd

IfS=87900:

Then87900+12.85→S:

Return:

IfEnd

IfS≤本段竖曲线终点桩号:

Then竖曲线交点高程→E:

前坡坡率→A:

后坡破率→B:

交点桩号→Q:

竖曲线半径→R:

切线长→TReturn:

IfEnd

……………………………………………….

竖曲线数据库输入说明:

S为计算里程,破率输入时以交点为起算点,上坡输正值,下坡输负值。

竖曲线半径输入,当竖曲线为凹曲线时半径输正值,当竖曲线为凸曲线时半径输负值。

PAN-SQX(竖曲线计算主程序):

LbI0:

“DK=”:

S:

S<线路起点桩号=>Goto0:

S>线路终点桩号=>Goto0:

Prog“PAN-4”:

“BJ=”:

?

B:

H-B*横坡→H:

“H=”:

H◢

Goto0

PAN-BIANPO(边坡放样主程序):

LbI0:

“DK=”:

S:

S<线路起点桩号=>Goto0:

S>线路终点桩号=>Goto0:

0→Z:

90→T:

Prog“PAN-1”:

Prog“PAN-2”:

“XC=”:

?

N:

“YC=”:

?

E:

“DMG=”:

?

G:

Prog“PAN-3”:

Prog“PAN-4”:

Goto1

LbI0:

“BJ=”:

?

B:

H-B*横坡-G→P:

“P=”:

P◢(可显示也可不显示)

IfP>10:

ThenGotoP:

IfEnd

IfP>0:

ThenGotoT:

IfEnd

IfP<0:

ThenGotoW:

IfEnd

LbIT:

“PO,BI=”:

?

O:

O*ABS(P)+B→L:

GotoJ

LbIW:

“PO,BI=”:

?

O:

“PINGTAI=”:

?

C:

O*ABS(P)+B+2(侧沟宽度)+C(平台宽度)→L:

GotoJ

LbIP:

“PO,BI=”:

?

O:

“PING,TAI=”:

?

C:

O*8+C+(P-8)O+B→L:

GotoJ

LbIJ:

K-S→K:

I→A:

L-ABS(A)→D

IfD>0:

Then“WAI,D=”:

D◢IfEnd

IfD<0:

Then“NEI,D=”:

D◢IfEnd

IfK>0:

Then“XIAO,K=”:

K◢IfEnd

IfK<0:

Then“DA,D=”:

K◢IfEnd

"CL"=L◢

Goto0

 

5800正反算及隧道超欠挖

任意坐标正反算及隧道超欠挖程序

1-JINYU(主程序)

Lbl4:

"1→ZS,2→FS,3→CQW"?

N

N=1=>Goto1:

N=2=>Goto2:

N=3=>Goto3

Lbl1:

“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:

S→K:

Prog“SJ¬-GC”:

“H=”:

Locate4,4,H◢

Goto4

Lbl2:

“X=”?

X:

“Y=”?

Y:

Prog“SJ¬-PM”:

X→I:

Y→  J:

Prog"SUB2-FS":

O+W→S:

“K=":

S◢

“P=":

Z◢

S→K:

Prog“SJ¬-GC”:

“H=”:

H◢

Goto4

Lbl3:

“X=”?

X:

“Y=”?

Y:

Prog“SJ¬-PM”:

X→I:

Y→  J:

Prog"SUB2-FS":

O+W→S:

“K=":

S◢

“P=":

Z◢

S→K:

Prog“SJ¬-GC”:

“H=”:

H◢

Prog“SJ-CQW”◢

Goto4

SJ¬-PM(子程序名-平面线形数据库)

IfS≥59227.681(线元起点里程):

Then2599818.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):

IfEnd

IfS≥59327.681(线元起点里程):

Then2599730.112→U(线元起点X坐标):

496840.237→V(线元起点Y坐标):

59327.681→O(线元起点里程):

208028’39”→G(线元起点方位角):

90→H(线元长度):

1×1045→P(线元起点曲率半径):

750→R(线元终点曲率半径):

-1→Q(线元左右偏标志:

左-1右1):

IfEnd

……

……

SJ-GC¬(子程序名-竖数据库)

IfS<变坡终点里程AndS≥变坡起点里程:

Then大里程坡度→A:

小里程坡度→B:

变坡点里程→O:

变坡点高度→G:

半径→R:

Prog“SUB3-GC”:

IfEnd

(注:

1.有多个竖曲线,依照上面的依次变更,每多一个,就增加一个。

每次只需要修改以上的数据或增加一个判断,子程序不用变动。

2.如整条线只有一个纵坡比喻为2﹪,那么程序应为IfS<终点里程AndS≥起点里程:

Then0.02→A:

0.02→B:

起点里程→O:

起点高程→G:

1×1045→R:

Prog“SUB3-GC”:

IfEnd)

SJ-CQW(子程序名-隧道数据库)

“H1=”?

F:

”P=”?

Z

IfF-H>5.845:

Then√((Abs(Z))2+(F-H-0.45)2)-7.45→W:

IfEnd:

IfF-H≤5.845AndF-H>-1.169:

Then√((Abs(Z)-1)2+(Abs(F-H-1.5))2)-6→W:

IfEnd:

IfF-H≤-1.169:

Then√((Abs(Z))2+(H-F+14.05)2)-16.5→W:

IfEnd:

“+CQ,-CQ=”:

W

SUB1-ZS(正算子程序)¬

1÷P→C:

(P-R)÷(2HPR)→D:

180÷π→E:

0.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

SUB2-FS(反算子程序)¬

G-90→T:

Abs((Y-V)cos(T)-(X-U)sin(T))→W:

0→Z:

Lbl0:

Prog"SUB1-ZS":

T+QEW(C+WD)→L:

(J-Y)cos(L)-(I-X)sin(L)→Z:

IfAbs(Z)<1E-6(注:

此处1E-6可输入0.000001):

thenGoto1:

ElseW+Z  →W:

Goto0:

IfEnd

Lbl1:

0→Z:

Prog"SUB1-ZS":

(J-Y)÷sin(F)→Z

SUB3-GC(高程子程序)

O-S→L:

A-B→W:

Abs(R*W÷2)→T:

O-T→M:

O+T→P

IfS≤M:

ThenG-L*B→H:

Goto5:

ElseIfS≤O:

ThenGoto3:

ElseIfS≤P:

ThenGoto4:

IfEnd:

IfEnd:

IfEnd

Lbi3

IfW>O:

ThenG+(M-S)2÷2÷R-L*B→H:

Goto5:

ElseIfW<O:

ThenG-(M-S)2÷2÷R-L*B→H:

Goto5:

IfEnd:

IfEnd

Lbi4

IfW>O:

ThenG+(S-P)2÷2÷R-L*A→H:

Goto5:

ElseIfW<O:

ThenG-(S-P)2÷2÷R-L*A→H:

Goto5:

IfEnd:

IfEnd

Lbi5

H→H:

Return

说明:

(正算1秒,反算和超欠挖5秒完成)

所有程序名。

不同线路,只需改动SJ-PM,SJ-GC,SJ-CQW三个子程序里的内容,其它不变。

1为正算,2为反算,3为超欠挖.

K=      正算时,输入所求点里程。

    反算时得出里程结果

      X=,Y=  正算时得出结果。

            反算时输入实测坐标

      P=      正算时输入偏距。

            反算时得出偏距

      H=      正算时得出高程。

            反算时得出高程

      H1=                                  超欠挖时输入实测高程

      +CQ,-CQ=                            得出超欠挖值

注,超欠挖输入时显示里程,编距,设计高程,不需输入。

只输入实测量高程H1

5800p全线高程计算程序带数据库

竖曲线全线高程计算程序

Lbl1:

“k=”?

H:

Prog"子程序"

C-D→F:

Abs(RF/2)→T:

R(Abs(F)/F)→R

IfH≤B-T:

Then0→K:

ElseIfH≥B+T:

Then0→K:

D→CElseH-B+T→K:

IfEnd:

IfEnd

"H=":

A-(B-H)C-K2/2R→G:

"G=":

G◢

Goto1

子程序

IFH≤第二竖曲线起点桩号:

Then第一竖曲线交点高程→A:

交点桩号→B:

前坡→C:

后坡→D:

曲线半径→R:

(Else):

IfEnd    继续添加曲线要素

10-11-6 楼主:

WJ~~强少 作者:

本文已被浏览 2458 次

 

5800超欠挖程序

1.主程序(NTSSD--CQW)

Lbl1:

5→DimZ:

(增加Z型5个变量)

600→S:

(输入近似里程)

Prog“SUB0”↙(定义所在线元数据库)

1÷P→C:

(P-R)÷(2HPR)→D:

180÷∏→E:

“X=”?

X:

“Y=”?

Y:

X→I:

Y→J:

(输入实测XY坐标,)

“H=”?

→Z[1]:

(输入实测高程)

“R=”?

→Z[2]:

(输入断面理论半径)

Prog“SUB2”:

(调用反算子程序,由反算两次调用正算子程序)

O+W→S:

“K=”:

S◢“BIANJULI=”:

Z◢(得到桩号及离中心桩距离)

Abs(Z)→B:

  (将变量值另存,利于后面计算)

617.42→C:

  (定义此段竖曲线变坡点桩号,也可?

C:

输入)

71.1→D:

    (定义此段竖曲线此段竖曲线变坡点高程)

1→I:

      (定义此段竖曲线后坡点坡度)

-0.6→J:

    (定义此段竖曲线前坡点坡度)

1500→R:

    (定义此段竖曲线变坡半径值)

-1→Q:

      (判断是凸凹曲线类型,-1→Q:

I1→Q)

240→L:

    (定义此段竖曲线曲线长)

120→T:

    (定义此段竖曲线切线长)

0.48→E:

    (定义此段竖曲线外距)

497.42→M:

  (定义此段竖曲线变坡曲线起点桩号)

737.42→N:

  (定义此段竖曲线变坡曲线终点桩号)

S→K:

      (将变量值另存,利于后面计算)

Prog“SUB3”:

(调用高程计算子函数)

Fix3:

    (输出保留3位小数)

1.5+Z→Z:

  (将路面设计值加减设计值得到开挖圆心高程)

开平方根((Z[1]-Z)2+B2)→X:

(得到实测点到圆心的距离)

“CQW=”:

X-Z[2]→A:

◢(将实测点半径减理论半径即为超欠挖)

ClrMemory:

Goto1

2.  SUB0数据库子程序

Goto1↙同时保存多个曲线时的指针

Lbl1:

IFS<***(线元终点里程):

Then***→G(线元起点方位角):

***→O(线元起点里程):

***→U(线元起点X):

***→V(线元起点Y):

***→P(线元起点曲率半径):

***→R(线元终点曲率半径):

***→H(线元起点至终点长度):

0或1、-1→Q:

Return:

IfEnd↙

Lbl1:

IFS<***(线元终点里程):

Then***→G(线元起点方位角):

***→O(线元起点里程):

***→U(线元起点X):

***→V(线元起点Y):

***→P(线元起点曲率半径):

***→R(线元终点曲率半径):

***→H(线元起点至终点长度):

0或1、-1→Q:

Return:

IfEnd

……………..

为了便于解读,每增加一个线元增加一行语句,每增加一条曲线增加一个Lbl,每增加一个工程增加一个文件

3.正算子程序(SUB1)

0.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

4.反算子程序(SUB2)

G-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:

IFAbs(Z)<0.000001:

Then0→Z:

Prog"SUB1":

(J-Y)÷sin(F)→Z↙

ElseW+Z→W:

Goto4:

IfEnd

5高程计算子程序(SUB3)

IFK≤M:

ThenD+(K-C)I/100→Z:

Return:

IfEnd↙

IFK>MAnd  K≤C:

Then(K-M)2/(2R)→P:

D+(K-C)I/100+QP→Z:

Return:

IfEnd↙

IFK>CAnd  K≤N:

Then(K-M)2/(2R)→P:

D+(K-C)J/100+QP→Z:

Return:

IfEnd↙

IFK>N:

ThenD+(K-C)J/100→Z:

Return:

IfEnd↙

经反复核对的,绝对能用,5800P上运行要4秒出结果。

 

Casio5800交点法与线元法(积木法)匝道坐标正反算放样程序

Casio5800交点法与线元法(积木法)匝道坐标正反算放样程序

《Casio5800交点法程序》与《线元法(积木法)匝道坐标正反算放样程序》,

程序由一个主程序ZBZFS和8个子程序(JS、XY-A、XY-B、JDYS、1、2、3、4)构成,运行时只需运行主程序即可!

本程序适用于单交点对称型、不对称型、无缓和曲线单圆曲线型一个交点范围内(含交点前后有直线段时)的曲线要素核对和坐标正反算,手工输入要素,对设计图纸的“直线、曲线转角表”中交点数据进行复核验证,并能对单一线元进行坐标正反算。

1主程序名:

ZBZFS(功能:

进入计算主程序)

65→Dimz↙

Deg:

Fix3↙

"1.JDZFS  2.ZHADAOZFS"?

I:

I→Z[61]:

"1.ZHONGSHUJS2.JS"?

I↙

IfI=1:

ThenGoto1:

ElseGoto2:

IfEnd↙

LbI1:

IfZ[61]=1:

ThenProg"JDYS":

Else  Cls:

"K0"?

A:

"KN"?

L:

"X0"?

U:

"Y0"?

V:

"F0"?

W:

"R0"?

P:

"RN"?

Q:

"ZX:

-1,+1,0"?

G:

IfEnd↙

LbI2:

Prog"JS"

2子程序名:

JS(功能:

选择正算或反算模式)

Cls:

"XC"?

H:

"YC"?

Z↙

Cls:

"1.ZS  2.FS"?

I:

I=2=>Goto3↙

LbI1:

Cls:

IfZ[61]=1:

Then"JDZSKX+XXX"?

K:

Prog"4":

Else"ZHADAOZSKX+XXX"?

K:

IfEnd↙

LbI  2:

Cls:

90→B:

Cls:

"RJOr0  ToK"?

B:

B=0=>Goto1:

"Z"?

T↙

Prog"XY-A"↙

X+Tcos(M+B)→X↙

Y+Tsin(M+B)→Y↙

360Frac((M+360)÷360→M↙

Pol(X-H,Y-Z:

360Frac((J+360)÷360→J↙

2→O:

Prog"XY-B":

Goto2↙

LbI3:

Cls:

IfZ[61]=1:

Then"JDFSKN+"?

K:

"X"?

C:

"Y"?

D:

Prog"4":

ElseCls:

"ZHADAOFS":

"X"?

C:

"Y"?

D:

IfEnd↙

LbI4:

Prog"XY-A"↙

(D-Y)sin(M)+(C-X)cos(M)→H↙

IfAbs(H)>X10-3:

ThenK+H→K:

Goto4:

IfEnd↙

(D-Y)÷cos(M)→T↙

3→O:

Prog"XY-B":

Goto3↙

3子程序名:

XY-A(功能:

坐标计算程序)

5→N:

G(Q-1-P-1)÷Abs(L-A)→F:

Abs(K-A)÷N→R:

90R÷π→S:

W+(FNR+2GP-1)NS→M:

1→E↙

U+R÷6×(Cos(W)+Cos(M)+4∑(Cos(W+((E+0.5)FR+2GP-1)×(E+0.5)S),E,0,(N-1))+2∑(Cos(W+((EFR+2GP-1)ES,E,1,(N-1)))→X↙

V+R÷6×(sin(W)+sin(M)+4∑(sin(W+((E+0.5)FR+2GP-1)×(E+0.5)S),E,0,(N-1))+2∑(sin(W+((EFR+2GP-1)ES,E,1,(N-1)))→Y↙

4子程序名:

XY-B(功能:

显示正算或反算结果)

IfO=2:

Then↙

Cls:

"K×××=":

"Z=":

"X=":

"Y=":

Locate6,1,K:

Locate4,2,T:

Locate4,3,X:

Locate4,4,Y◢

IfT=0:

ThenCls:

"QF(Z)=":

Locate8,1,M:

M▼DMS◢

IfEnd↙

Cls:

"K×××=":

"S=":

Locate6,1,K:

Locate4,2,I:

"F=":

J:

J▼DMS◢

IfEnd↙

IfO=3:

Then"X=":

"Y=":

"K×××=":

"Z=":

Locate4,1,C:

Locate4,2,D:

Locate6,3,K:

Locate4,4,T◢

IfEnd:

Cls↙

5子程序名:

4(功能:

将交点参数转为线元计算参数)

LbI1:

IFZ[48]<0:

Then-1→Z[62]:

Else:

1→Z[

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机软件及应用

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1