交点計算(円−円)

CASIO fx-4800P版 測量計算ソフト プログラムソース




FX-603P版はこちらです→FX-603P 交点計算(円−円)     印刷用ページ】

交点計算(円−円)

 ふたつの円の交点(P),(Q)の座標(Px,Py),(Qx,Qy)を計算します。
 入力データは、A円の中心座標(Ax,Ay)と半径(Ra)、B円の中心座標(Bx,By)と半径(Rb)です。

交点計算(円−円)画面

交点計算(円−円) 【ファイル名:P8】(448バイト)
   Fixm
Lbl 0:"<KOUTEN_C-C>>"
   {AB}
   A"AX_":B"AY_"
Lbl 1:{E}
   E"RA_"
   E≦0⇒Goto 1△
Lbl 2:{CD}
   C"BX_":D"BY_"
Lbl 3:{F}
   F"RB_"
   F≦0⇒Goto 3△
   T=A:U=B:V=C:W=D
   Prog "ZA.SUB"
   Z=999⇒Goto 0△
   G=X:H=Y
   (E+F-G)<0⇒Prog "ER.SUB":Goto 0△
   (G+F-E)<0⇒Prog "ER.SUB":Goto 0△
   (G+E-F)<0⇒Prog "ER.SUB":Goto 0△
   K=Acos ((G^2+E^2−F^2)÷(2×G×E))
   L=H+K
   M=cos L×E+A
   N=sin L×E+B
   L=H−K
   P=cos L×E+A
   Q=sin L×E+B
   T=M:U=N:V=A:W=B
   Prog "ZA.SUB"
   T=Y:Prog "60.SUB"
   M"PX="▲
   N"PY="▲
   V"HOUTEN_C-C>KOUTEN_C-C>(P-A)="▲
   T=P:U=Q:V=A:W=B
   Prog "ZA.SUB"
   T=Y:Prog "60.SUB"
   P"QX="▲
   Q"QY="▲
   V"HOUTEN_C-C>KOUTEN_C-C>(Q-A)="▲
   Goto 2

QUICK RUN に書き加える条件文 (14バイト)
  I=8⇒Prog "P8":Goto 0△

エラー表示サブルーチン 【ファイル名:ER.SUB】(38バイト)
   Z=999
   "DATA_ERROR"
   Pause 1

座標変換サブルーチン 【ファイル名:ZA.SUB】(106バイト)
   Fixm:Z=0
   (T-V)≠0⇒Goto 1△
   (U-W)≠0⇒Goto 1△
   Prog "ER.SUB":Goto 2
Lbl 1:X=W-U:Y=V-T
   Deg:Pol(Y,X)
   J≦0⇒J=J+360△
   X=I:Y=J
Lbl 2

角度変換サブルーチン 【ファイル名:60.SUB】(153バイト)
   Fixm:V=T:W=T
   T=0⇒Goto 1△
   X=T÷Abs T
   T=Abs T
   V=Int T:W=V
   Y=(T-V)×60
   I=Int Y
   J=(Y-I)×60
   V=(V+(J÷100+I)÷100)×X
   Y=Frac T×100
   I=Int Y
   J=(Y-I)×100
   W=(W+(I+J÷60)÷60)×X
Lbl 1

ご注意下さい
  • プログラムを入力する前に、fx-4800Pの取扱説明書をよくお読みください。
  • プログラムをご使用になる前に、「内容説明書」「操作手順書」「例題集」を良くお読みになり、操作方法を練習してください。
  • 上記プログラムソースは見やすいようにインデントされていますが、fx-4800Pに入力する際には、インデントを無視してください。
  • ファイル名は変更可能ですが、ソフト起動プログラム(QUICK RUN)を利用する場合には変更しないでください。
  • サブルーチンは他のプログラムと共用しますのでファイル名を変更しないでください。
  • アルファベットの「O」と数字の「0」を区別するため、アルファベットの「 O 」にアンダーラインを入れて表示しています。
  • fx-4800Pのプログラムには通常のテキストでは忠実に表現できないものがあります。本プログラムリストでは下表の通り表現していますのでご注意ください。