|
初めてこの掲示板を利用します。
失礼なこともあるかもしれませんが、よろしくお願いします。
関数segmentを呼ぶ度にjを1つずつ増やす方法を教えてください。
下記がおおまかなプログラムです。
OPTION ARITHMETIC complex
LET j=1
DECLARE EXTERNAL SUB segment
LET w=5
SET WINDOW -w,w,-w,w
DRAW grid(0.5,0.5)
PRINT "複素平面上の三角形を関数 w=z^3 で写す"
PRINT "3点の座標を入力してください。"
CALL cinput(z1)
CALL cinput(z2)
CALL cinput(z3)
CALL segment(z1,z2,2)
CALL segment(z2,z3,3)
CALL segment(z3,z1,4)
END
EXTERNAL SUB segment(z1,z2,col)
OPTION ARITHMETIC COMPLEX
DEF f(z)=z^3
LET i=SQR(-1)
SET LINE COLOR col
REM 線分を描く
SET LINE width 3
PLOT LINES
REM 線分上の点の写像による像を描く
SET LINE width 2
FOR t=0 TO 1 STEP 0.2
LET z=(1-t)*z1+t*z2
PRINT z,j
PLOT LINES : re(z),im(z);
NEXT t
LET j=j+1
END SUB
REM 複素数の入力
EXTERNAL SUB cinput(z)
OPTION ARITHMETIC COMPLEX
INPUT PROMPT "実部虚部を入力: ": x, y
LET z=complex(x,y)
END SUB
質問ばかりで悪いのですが、cinputは、DECLARE EXTERNALの宣言がなくて、なぜいきなり呼び出せるでしょうか。教えていただけると幸いです。
お返事おねがいします。
|
|