新しく発言する EXIT インデックスへ
文字あるいは記号を座標平面上の指定した座...

  文字あるいは記号を座標平面上の指定した座標に表示したいのですが zyam56 2006/10/31 19:09:53 
  PLOTTEXT文を使います。 山中和義 2006/10/31 21:08:44 
   └教えていただきありがとうございます。さら... zyam56 2006/11/01 05:42:25 
    └文字列に変換します。 山中和義 2006/11/01 07:06:31 
     └教えていただきありがとうございました。 zyam56 2006/11/01 19:17:23 

  文字あるいは記号を座標平面上の指定した座標に表示したいのですが zyam56 2006/10/31 19:09:53  ツリーへ

文字あるいは記号を座標平面上の指定した座標に表示したいのですが 返事を書く
zyam56 2006/10/31 19:09:53
中3の関数分野と相似な図形分野で十進BASICを使わせて頂きます。
たとえば、以下のようなプログラムで、相似な三角形の各頂点に記号A、B、Cを書き込みたいのですが、コマンドはどのようにすればよいでしょうか。
*****************************************
1 REM マウスで座標平面上の点を指定し、相似な図形を描く。
10 REM**********座標平面を用意する**********
20 SET WINDOW -1,28,-1,28
30 REM DRAW GRID
40 REM**************************************
50 OPTION ANGLE DEGREES
60 SET COLOR 4
70 GET POINT: x1,y1
80 PLOT POINTS: x1,y1
90 GET POINT: x2,y2
100 PLOT POINTS: x2,y2
110 GET POINT: x3,y3
120 PLOT POINTS: x3,y3
130 SET COLOR 4
134 REM *************************************
135 REM はじめ、赤い色の三角形をえがく
140 PLOT LINES: x1,y1;x2,y2;x3,y3;x1,y1
150 REM *************************************
160 INPUT PROMPT"相似比をいくつにしますか":a
170 REM**************************************
180 SET COLOR 2
190 LET p1=a*x1
200 LET q1=a*y1
210 LET p2=a*x2
220 LET q2=a*y2
230 LET p3=a*x3
240 LET q3=a*y3
250 PLOT POINTS: p1,q1
260 PLOT POINTS: p2,q2
270 PLOT POINTS: p3,q3
274 REM **************************************
275 REM 与えられた相似比によって、青い色の相似な三角形を描く
280 PLOT LINES: p1,q1;p2,q2;p3,q3;p1,q1
290 REM **************************************
295 REM ***黒い色の線で相似な図形の対応する頂点をむすぶ
300 DEF f(x)=q1/p1*x
310 DEF g(x)=q2/p2*x
320 DEF e(x)=q3/p3*x
330 SET COLOR 1
340 REM ************************************
350 IF a<1 THEN GOTO 510 ELSE GOTO 360
360 REM ************************************
370 FOR x=0 TO a*x1 STEP 0.0002
380 PLOT LINES : x,f(x)
390 NEXT x
400 REM ************************************
410 FOR x=a*x2 TO 0 STEP -0.0002
420 PLOT LINES : x,g(x)
430 NEXT x
440 REM ************************************
450 FOR x=0 TO a*x3 STEP 0.0002
460 PLOT LINES : x,e(x)
470 NEXT x
480 REM ************************************
490 GOTO 630
500 REM *************************************
510 FOR x=0 TO x1 STEP 0.0001
520 PLOT LINES : x,f(x);
530 NEXT x
540 REM ************************************
550 FOR x=x2 TO 0 STEP -0.0001
560 PLOT LINES : x,g(x)
570 NEXT x
580 REM ************************************
590 FOR x=0 TO x3 STEP 0.0002
600 PLOT LINES : x,e(x)
610 NEXT x
620 REM *************************************
630 END

  PLOTTEXT文を使います。 山中和義 2006/10/31 21:08:44  ツリーへ

Re: 文字あるいは記号を座標平面上の指定した座標に表示したいのですが 返事を書く
山中和義 2006/10/31 21:08:44
PLOT TEXT文を使います。

80 PLOT POINTS: x1,y1
PLOT TEXT ,AT x1,y1: "A"
100 PLOT POINTS: x2,y2
PLOT TEXT ,AT x2,y2: "B"
120 PLOT POINTS: x3,y3
PLOT TEXT ,AT x3,y3: "C"

250 PLOT POINTS: p1,q1
PLOT TEXT ,AT p1,q1: "A'"
260 PLOT POINTS: p2,q2
PLOT TEXT ,AT p2,q2: "B'"
270 PLOT POINTS: p3,q3
PLOT TEXT ,AT p3,q3: "C'"

330 SET COLOR 1
PLOT TEXT ,AT 0,0: "O"
という具合にすればよいでしょう。


また、
520 PLOT LINES : x,f(x);

520 PLOT LINES : x,f(x)
でしょうか。

   └教えていただきありがとうございます。さら... zyam56 2006/11/01 05:42:25  ツリーへ

Re: PLOTTEXT文を使います。 返事を書く
zyam56 2006/11/01 05:42:25
教えていただきありがとうございます。さらに、
入力した相似比「a」の値を「=」のあとに表示させるにはどうしたらよいでしょうか。

PLOT TEXT ,AT x1+3,y1+3: "三角形A'B'C'の三角形ABCに対する相似比は="

    └文字列に変換します。 山中和義 2006/11/01 07:06:31  ツリーへ

Re: 教えていただきありがとうございます。さら... 返事を書く
山中和義 2006/11/01 07:06:31
文字列に変換します。
PLOT TEXTで出力できるのは文字列ですから、数値はSTR$関数で
PLOT TEXT ,AT x1+3,y1+3: "三角形A'B'C'の三角形ABCに対する相似比は="&STR$(a)
とします。
また、書式(PRINT USING)を使う場合は、
PLOT TEXT, AT x1+3,y1+3, USING "三角形A'B'C'の三角形ABCに対する相似比は=#.##": a
とします。
他に、座標を表示する場合は
PLOT TEXT ,AT x1,y1: "("&STR$(x1)&","&STR$(y1)&")"
となります。

     └教えていただきありがとうございました。 zyam56 2006/11/01 19:17:23  ツリーへ

Re: 文字列に変換します。 返事を書く
zyam56 2006/11/01 19:17:23
教えていただきありがとうございました。
おかげさまでPC教室での授業がうまくいきそうです。


インデックスへ EXIT
新規発言を反映させるにはブラウザの更新ボタンを押してください。