暴强卡西欧5800计算器程序湖南津市 赵济汉.docx

上传人:b****6 文档编号:6795679 上传时间:2023-01-10 格式:DOCX 页数:17 大小:36.58KB
下载 相关 举报
暴强卡西欧5800计算器程序湖南津市 赵济汉.docx_第1页
第1页 / 共17页
暴强卡西欧5800计算器程序湖南津市 赵济汉.docx_第2页
第2页 / 共17页
暴强卡西欧5800计算器程序湖南津市 赵济汉.docx_第3页
第3页 / 共17页
暴强卡西欧5800计算器程序湖南津市 赵济汉.docx_第4页
第4页 / 共17页
暴强卡西欧5800计算器程序湖南津市 赵济汉.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

暴强卡西欧5800计算器程序湖南津市 赵济汉.docx

《暴强卡西欧5800计算器程序湖南津市 赵济汉.docx》由会员分享,可在线阅读,更多相关《暴强卡西欧5800计算器程序湖南津市 赵济汉.docx(17页珍藏版)》请在冰豆网上搜索。

暴强卡西欧5800计算器程序湖南津市 赵济汉.docx

暴强卡西欧5800计算器程序湖南津市赵济汉

CASIO-----fx5800  (任意平曲线极坐标与直角坐标放样,求里程及边距)        

湖南津市赵济汉

主程序PQX

Deg:

Fix3:

“XZ→0:

YZ→1”?

A:

If  A=1:

ThenGoto1:

IfEnd↙

If  A=0:

Then“BS→0:

XY→1:

AND→2:

DK→3:

L(I)→4”?

O:

IfEnd↙

If  O=4:

Then  Goto1:

IfEnd↙

If  O=3:

Then  Prog  “F.2”:

If  X=0:

Then  Goto1:

IfEnd:

IfEnd↙

If  O≠1:

Then“X1”?

X:

“Y1”?

Y:

X→Z[11]:

Y→Z[12]:

“X2”?

P:

“Y2”?

Q:

Pol(P-X,Q-Y):

If  J﹤0:

Then  J+360→J:

IfEnd:

Cls:

“S12=”:

  Locate6,1,I:

“B12=”:

J►DMS◣

1→B:

IfEnd↙

If  O=1:

Then“XY(0)→0:

≠﹥1”?

B:

IfEnd↙

Lbl  1:

If  A=1  And  O=3:

Then  Prog  “F.2”:

IfEnd:

Prog“Q.1”  

子程序PPQX            (给定综合曲线属性)

“ZQX→0:

***→1:

***→2*******”?

C↙

If  C=0:

Then100→Z[98]:

n0→Z[99]:

IfEnd↙

If  C=1:

Then  m1→Z[98]:

n1→Z[99]:

IfEnd↙

If  C=2:

Then  m2→Z[98]:

n2→Z[99]:

IfEnd↙

*******

Prog“PQX”

其中:

  mi为第i条综合曲线矩阵变量起始单元,(第1条综合曲线矩阵变量起始单元应自100开始,以便其他程序临时使用100以前的矩阵变量,综合曲线中每一基本单元需8个矩阵存储单元);ni为第i条综合曲线中基本单元数,每增加一个条综合曲线则增加一行If  C=*******→Z[99]:

IfEnd↙语句。

还应注特别意,原有程序中的矩阵变量定维语句DimZ应取消,只要原有程序中的矩阵变量定维不大于100,原有程序的运行不受影响。

子程序Q.5              (建立数据库)

Deg:

Fix5↙

0→I:

“N”?

W:

W→Z[99]:

“Z[MIN]”?

V:

V→Z[98]↙

Lbl  1:

“NO.I=”:

I◣

Lbl  C:

V+8I→G↙

“→DK”?

A:

A→Z[G]↙

“→X”?

B:

B→Z[G+1]↙

“→Y”?

C:

C→Z[G+2]↙

“→AT”?

D:

D→Z[G+3]↙

“→(-1Y+1)”?

K:

K→Z[G+4]↙

“→L”?

E:

E→Z[G+5]↙

“→R1”?

F:

F→Z[G+6]↙

“→R2”?

O:

O→Z[G+7]↙

Lbl  2:

“JX→1:

NO→0:

OK→2”?

M:

If  M=2:

Then  Goto3:

IfEnd:

If  M=1:

Then  Goto  C:

IfEnd↙

I+1→I:

Goto  1↙

Lbl  3:

“END”

子程序Q.6

Lbl  1:

“S”?

W:

If  W=0:

Then  Goto2:

IfEnd↙

I-W→W:

Cls:

“⊿S=”:

Locate5,1,W:

“BP=”:

J►DMS◣

Goto  1↙

Lbl  2:

Cls:

“OK”

子程序Q.1

If  X=0  And  O=3:

Then  Goto  2:

IfEnd↙

Lbl  1:

Z[98]→I:

Z[99]→J:

“→DKP”?

S↙

If  S=-1:

Then  Prog  “JH.ZJ”:

Goto  1:

IfEnd↙(加桥台转轴时)

If  S=-2:

Then  Prog  “ZH.2”:

Goto  1:

IfEnd↙(加涵通转轴时)

If  S=0:

Then  Goto  2:

IfEnd:

If  S﹤Z[I]:

Then“DKP

Goto  1:

IfEnd:

If  S>Z[I+8J]:

Then“DKP>MAX”◣

Goto  1:

IfEnd↙

If  O≠4  And  B≠0:

Then“→B”?

V:

V:

Prog“J”:

T→U:

“→(-+)D÷2”  ?

N:

Else  0→N:

IfEnd↙

Prog“Q.2”:

Goto  1↙

Lbl  2:

“END”

子程序Q.2

If  O≠3  :

Then“→”:

IfEnd↙

0→I:

Z[98]+8→M↙

If  S≥Z[M-8]And  S≤Z[M]:

Then  Goto  1:

IfEnd↙

Lbl  2:

I+1→I:

M+8→M↙

If  S≤Z[M]:

Then  Goto  1:

Else  Goto  2:

IfEnd↙

Lbl  1:

If  O=3  :

Then  I→B:

IfEnd:

M→Z[27]:

  If  O≠4  :

Then  Prog“Q.3”:

Else  “L(I),I=”:

I◣

Cls:

“MIN=”:

Locate  6,1,Z[Z[98]+8I]:

“MAX=”:

Locate  6,2,Z[Z[98]+8I+8]:

I→B:

IfEnd↙

子程序Q.3

If  O=3  And  U=0:

Then  B→I:

IfEnd↙

Z[98]+8I→G↙

Z[G]→Z↙

Z[G+1]→Z[1]:

Z[G+2]→Z[2]:

Z[G+3]→Z[3]↙

Z[3]:

Prog  “J”:

T→Z[3]↙

Z[G+4]→Z[4]:

Z[G+5]→M:

1÷Z[G+6]→Z[5]:

1÷Z[G+7]→Z[6]↙

Z[6]-Z[5]→Z[6]:

S-Z→D↙

If  O=3  :

Then  0→N:

IfEnd:

Prog  “Q.4”↙

子程序Q.4            (正算)

Lbl  0:

0→I:

0→E:

0→F:

0→G:

0→H↙

Lbl  1:

I+1→I:

Z[3]+Z[4]((ID÷12)(Z[5]+IDZ[6]÷24÷M)(180÷л)→W:

If  I﹤12:

Then  If  Frac(I÷2)﹥0:

Then  E+cos(W)→E:

F+sin(W)→F:

Else  G+cos(W)→G:

H+sin(W)→H:

IfEnd:

IfEnd↙

If  I﹤12:

Then  Goto1:

IfEnd↙

Z[1]+(D÷36)(cos(Z[3])+cos(W)+2G+4E)+Ncos(U+W)→P↙

Z[2]+(D÷36)(sin(Z[3])+sin(W)+2H+4F)+Nsin(U+W)→Q↙

If  O=3:

Then  Goto  2:

IfEnd↙

If  O≠0:

Then  Cls:

“XP=”:

Locate5,1,P:

“YP=”:

Locate5,2,Q:

“AT=”:

W►DMS◣

IfEnd↙

Z[27]→I:

If  Z[I]-S=0  And  Z[I+1]=0And  N=0:

Then  P→Z[I+1]:

Q→Z[I+2]:

W:

Prog“H”:

T→Z[I+3]:

IfEnd↙

If  O≠1:

Then  Pol(P-Z[11],Q-Z[12]):

If  J<0:

ThenJ+360→J:

IfEnd:

Cls:

“SP=”:

Locate5,1,I:

“BP=”:

J►DMS◣

Prog  “Q.6”:

IfEnd↙

Lbl  2

子程序F.2            (反算)

“ZH.D(LI)→0:

NO→1”?

U↙

Lbl  2:

If  U=0:

Then“I”?

B:

IfEnd↙

Z[98]+8Z[99]→M↙

If  X=0:

Then  Z[13]→X:

IfEnd:

“X”?

X:

If  X=0:

Then  Goto  3:

IfEnd↙

“Y”?

Y:

1→Z[8]↙

“=〉”↙

If  U=1:

Then-√((X-Z[M+1])²+(Y-Z[M+2])²)→Z[7]:

Z[7]+Z[M]→S:

  Prog“Q.2”:

IfEnd↙

Z[98]+8B→M:

Z[M+3]:

Prog“J”:

T-90→T↙

(Y-Z[M+2])cos(T)-(X-Z[M+1])Sin(T)→Z[7]↙

If  U=1And  Abs(Z[7])≤0.01:

Then-0.01→Z[7]:

IfEnd↙

Z[7]→D:

Z[M]+D→S:

If  S>Z[M+8]:

Then  Z[M+8]→S;IfEnd  ↙

If  U=0:

Then  Prog“Q.3”:

Else  Prog“Q.2”:

IfEnd↙

“=〉”↙

Lbl  1:

(Y-Q)cos(W-90)-(X-P)sin(W-90)→Z[8]↙

Z+Z[7]+Z[8]→S↙

If  Abs(Z[8])≥0.0001:

ThenZ[7]+Z[8]→D:

Prog“Q.4”:

D→Z[7]:

Goto  1:

IfEnd↙

If  U=1:

Then  If  S+0.01

Then“DKP≠”:

S◣

If  B

ThenB-1→B:

Z[Z[98]+8B]→I:

Z→J:

ElseZ→I:

Z[Z[98]+8Z[99]]→J:

IfEnd:

“L(I)=”:

B◣

Cls:

“MIN=”:

Locate6,1,I:

“MAX=”:

Locate6,2,J:

“END,=〉ZH.D(LI)”◣

X→Z[13]:

0→X:

3→O:

Goto  3:

IfEnd:

IfEnd↙

If  U=0:

Then  If  S

Then“DK

Goto  2:

IfEnd:

If  S>Z[Z[98]+8(B+1)]+0.01:

Then“DK>MAX,L→(I+1)”◣

Goto  2:

IfEnd:

IfEnd↙

Cls:

“DKP=”:

Locate  6,1,S:

X-P→P:

If  P=0:

Then  ×10-9→P:

IfEnd:

Pol(P,Y-Q):

If  sin(W-J)>0:

Then-I→I:

IfEnd:

“D÷2=”:

Locate6,2,I:

Goto  2↙

Lbl  3

子程序J

Ans  ÷.36-16(Int  (Ans))÷9-Int(100(Ans-Int(Ans))  )÷90→T

子程序H

.64Int  (Ans)+.36Ans+.004Int((60(Ans-(Int(Ans))→T

为了实现桥台转轴坐标计算,现(

子程序JH.ZJ      (桥台转轴)

“=〉B”?

V:

V:

Prog“J:

W+T→T↙

Lbl  1:

“=〉(-Y+)D”?

N:

N=0=〉Goto2:

“=〉(-→+)S”?

S↙

Pol(N,S):

Rec(I,T-J)↙

Cls:

“X=”:

Locate  6,1,I+P:

“Y=”:

Locate  6,2,J+Q◣

Goto1↙

Lbl  2:

“OK”◣

在子程序Q.1中语句Lbl  1:

Z[98]→I:

Z[99]→J:

“→DKP”?

S↙后加

If  S=-1:

Then  Prog  “JH.ZJ”:

Goto  1:

IfEnd↙(加桥台转轴时)就可以了,(,见绿色标注语句。

                  桥台(桩基)转轴直角坐标计算运行提示符

      直角坐标放样令DKP=-1时,转向桥台(桩基)转轴直角坐标计算

  提  示  符          说                  明

                  以上一测点中桩为中心作偏转

  =〉B?

          问转轴偏角(以小数点为度)

  =〉(-Y+)D?

    问偏距(与直角坐标放样时意义一致)。

赋值0时转向OK

  =〉(-→+)S?

  问支距(小里程方向为-,大里程方向为+)

  X=              给出点位纵坐标

  Y=              给出点位横坐标                        

  OK              本转轴各点计算结束,返回直角坐标放样。

子程序ZH.2      (涵通转轴)

“=〉B”?

V:

V:

Prog“J”:

W+T→T

Lbl  1:

“=〉(-→+)K”?

S:

S=0=〉Goto2:

“=〉(-Y+)D”?

N↙

NCos(T)+P→X:

NSin(T)+Q→Y  ↙

Cls:

“X=”:

Locate  6,1,SCos(W)+X:

“Y=”:

Locate  6,2,SSin(W)+Y◣

Goto1↙

Lbl  2:

“OK”◣

在子程序Q.1中语句If  S=-1:

Then  Prog  “JH.ZJ”:

Goto  1:

IfEnd↙后加

                If  S=-2:

Then  Prog  “ZH.2”:

Goto  1:

IfEnd↙(加涵通转轴时)即可。

                    

      涵通转轴直角坐标计算  中桩直角坐标放样令DKP=-2时,

提  示  符 示  例 说                  明

          以上一测点中桩为中心作偏转

=〉B?

          问涵通偏角(以小数点为度)

=〉(-→+)δK?

  问里程差(相对于涵通中桩,小里程为-、大里程为+),赋值0时转向OK

=〉(-Y+)D?

  问偏距(与直角坐标放样时意义一致)

X=                        给出点位纵坐标

Y=                        给出点位横坐标  

OK          本转轴各点计算结束,返回直角坐标放样。

算例1

      例某工程C匝道:

  根据算例数据确定综合曲线属性:

令名C.ZD  令编号0  令(矩阵存起始储单元)Z[MIN]=100  (综合曲线段数,不含终点)N=4

      红色数据应在Q.5程序运行时按提示赋值

  一  给矩阵存储单元定维:

(COMP状态下)  140→DimZ

  

  二  编写程序PPQX(PROG状态下给定综合曲线属性)

  “C.ZD→0”?

C↙

  If  C=0:

Then起始单元100→Z[98]:

段数4→Z[99]:

IfEnd↙

  Prog“PQX”

      

  三  启动Q.5  按下列数据建立矩阵存储表  (COMP状态下按提示赋值,详见附件运行提示符)

    

     

 

       自              然                  段

 

名称   L0      L1        L2          L3            L4

      

DK       0     190       355.927      472.168    561.791

X    20934.495  21066.119  21142.859  21076.993  20988.267

Y    89274.172  89411.182   89552.427  89640.286  89644.485

AT  47.08177 45.09322   93.33281    160.09323  185.50027

±1     -1         1         1           1         0

L     190     165.927       116.241    89.623        0

R1     5500       5500       100       100           0

R2     5500       100       100        ×1020        0

  备注:

起始矩阵存储单元Z[100]  终了矩阵存储单元Z[139]。

  (139=100+8×5-1)

四  启动程序PPQX(COMP状态下指定需计算的综合曲线编号)

  C.ZD→0?

    提示C匝道赋值0

        回车

  (自动转向PQX进入各项计算)

为了提高计算速度,现提供Q.4(5点法加速),以该程序取代原有Q.4,其它无需改变。

取代后按指定区间反算时间大约4秒,有兴趣的朋友可以试试。

Q.4    (5点法加速)

If  Z[4]=0:

Then1→Z[4]:

IfEnd↙

Z[4]Z[G+6]→Z[9]:

Z[4]Z[G+7]→Z[10]↙

(Z[9]-Z[10])÷(2M  Z[9]Z[10])→Z[13]:

S-Z→Z[14]:

Z[13]Z[14]→Z[13]:

1÷Z[9]→Z[22]↙

0.26→Z[15]:

0.74→Z[16]:

0.02→Z[17]:

0.82→Z[18]↙

1-Z[18]→Z[19]:

1-Z[17]→Z[20]:

180÷л→Z[21]↙

Z[3]+Z[17]Z[14](Z[22]+Z[17]Z[13])Z[21]→Z[17]↙

Z[3]+Z[18]Z[14](Z[22]+Z[18]Z[13])Z[21]→Z[18]↙

Z[3]+Z[19]Z[14](Z[22]+Z[19]Z[13])Z[21]→Z[19]↙

Z[3]+Z[20]Z[14](Z[22]+Z[20]Z[13])Z[21]→Z[20]↙

Z[3]+Z[14](Z[22]+Z[13])Z[21]→W↙

Z[1]+Z[14](Z[15]cos(Z[17])+Z[16]cos(Z[18])+Z[16]cos(Z[19])+Z[15]cos(Z[20]))+Ncos(U+W)→P↙

Z[2]+Z[14](Z[15]sin(Z[17])+Z[16]sin(Z[18])+Z[16]sin(Z[19])+Z[15]sin(Z[20]))+Nsin(U+W)→Q↙

If  O=3:

Then  Goto2:

IfEnd↙

If  O≠0:

Then  Cls:

“XP=”:

Locate5,1,P:

“YP=”:

Locate5,2,Q:

“AT=”:

W►DMS◣

IfEnd↙

Z[27]→I:

If  Z[I]-S=0  And  Z[I+1]=0  AndN=0:

Then  P→Z[I+1]:

Q→Z[I+2]:

W:

Prog“H”:

T→Z[I+3]:

IfEnd↙

If  O≠1:

Then  Pol(P-Z[11],Q-Z[12]):

If  J<0:

ThenJ+360→J:

IfEnd:

Cls:

“SP=”:

Locate5,1,I:

“BP=”:

J►DMS◣

Prog  “Q.6”:

IfEnd↙

Lbl  2

需对程序有更多了解,可点击附件,看运行提示符            

平曲线程序运行提示符

CASIOfx—5800P湖南津市赵济汉

启动Q.5建立曲线要素矩阵存储表

提示符

示例

说明

N?

问综合曲线自然段数

Z[MIN]?

问矩阵存储起始单元

NO.I=

提示现在自然段

→DK?

问本段起点里程

→X?

问本段起点纵坐标

→Y?

问本段起点横坐标

→AT?

问本段起点切线方位(以小数点为度)

→(-1Y+1)?

问曲线偏向,左赋值-1,右赋值+1,直线可赋0.

→L?

问本段曲线长

→R1?

问本段起点曲率半径

→R2?

问本段终点曲率半径

JX→1:

NO→0:

OK→2?

问是否校对,是赋值1,否赋值0,本综合段结束赋值2。

(校对有误时可直接对显示值进行修改)

END

重复以上拾

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

当前位置:首页 > 幼儿教育 > 幼儿读物

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

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