プログラムのページ

後楽園など スライド プログラム タグの練習 質問箱 管理人のpage


背景色変更

    


プログラム・極形式など

BASICでプログラムしました。 専門の人が見られたら稚拙のあまりお笑

いになると思います。  その時は、掲示板に書き込んでご教授ください。



こんなグラフがBASICで書けたらたら面白いと思いませんか

アルキメデスの渦巻線 カージオイド リサージュ曲線 正葉線


アルキメデスの渦巻線

                      10 LINE(0,384)-(1020,384):LINE(512,0)-(512,764)
                      20 INPUT "a=";a
                      30 FOR t=0 TO 6*3.14159 STEP 3.14159/360
                      40 r=a*t
                      50 SLEEP 10
                      60 X=INT(r*COS(t)*20+512)
                      70 Y=INT(-r*SIN(t)*20+384)
                      80 PSET(X,Y)
                      90 NEXT t
                      100 END

アルキメデスの渦巻線



デカルトの葉形

                      10 LINE(0,384)-(1020,384):LINE(512,0)-(512,764)
                      20 INPUT "a=";a
                      30 FOR t=0 TO 3.14159 STEP 3.14159/360
                      40 r=(3*a*SIN(t)*COS(t))/((COS(t))^3+(SIN(t))^3)
                      50 SLEEP 50
                      70 X=INT(r*COS(t)*20+512)
                      80 Y=INT(-r*SIN(t)*20+384)
                      90 PSET(X,Y)
                      100 NEXT t
                      110 END

デカルトの葉形



r(1-ecos(t))=e

                      10 LINE(0,384)-(1020,384):LINE(512,0)-(512,764)
                      20 INPUT "e=";e
                      30 FOR t=.01 TO 2*3.14159 STEP 3.14159/360
                      40 r=e/(1-e*COS(t))
                      50 P=SIN(t):Q=COS(t)
                      60 X=INT((e*Q/(1-e*Q))*45+512)
                      70 Y=INT((-e*P/(1-e*Q))*45+384)
                      80 SLEEP 20
                      90 PSET(X,Y)
                      100 NEXT t
                      110 END

                     e>1 のとき双曲線 e=1 のとき楕円 e<1 のとき放物線

双曲線・楕円・放物線



r=acos(t)+b a=b のときはカージオイド

                      10 LINE(0,384)-(1020,384):LINE(512,0)-(512,764)
                      20 INPUT "a=";a
                      30 INPUT "b=";b
                      40 FOR t=0 TO 2*3.14159 STEP 3.14159/360
                      50 r=a*COS(t)+b
                      60 SLEEP 10
                      70 X=INT(r*COS(t)*20+512)
                      80 Y=INT(-r*SIN(t)*20+384)
                      90 PSET(X,Y)
                      100 NEXT t
                      110 END

カージオイド



r=acos(t)+bsin(t)

                      10 LINE(0,384)-(1020,384):LINE(512,0)-(512,764)
                      20 INPUT "a=";a
                      30 INPUT "b=";b
                      40 FOR t=0 TO 3.14159 STEP 3.14159/360
                      50 r=a*COS(t)+b*SIN(t)
                      60 SLEEP 10
                      70 X=INT(r*COS(t)*20+512)
                      80 Y=INT(-r*SIN(t)*20+384)
                      90 PSET(X,Y)
                      100 NEXT t
                      110 END

極形式のグラフ



r=coe(at)+b

                      10 LINE(0,384)-(1020,384):LINE(512,0)-(512,764)
                      20 INPUT "a=";a
                      30 INPUT "b=";b
                      40 FOR t=0 TO 2*3.14159 STEP 3.14519/360
                      50 r=COS(a*t)+b
                      60 SLEEP 10
                      70 X=INT(r*COS(t)*20+512)
                      80 Y=INT(-r*SIN(t)*20+384)
                      90 PSET(X,Y)
                      100 NEXT t
                      110 END

極形式のグラフ



rcos(t-a)=b

                      10 LINE(0,384)-(1020,384):LINE(512,0)-(512,764)
                      20 INPUT "a=";a
                      30 INPUT "b=";b
                      40 FOR t=0 TO 3.14159 STEP 3.14159/360
                      50 r=b/COS(t-a)
                      60 FOR U=0 TO 100
                      70 NEXT U
                      80 X=INT(r*COS(t)*20+512)
                      90 Y=INT(-r*SIN(t)*20+384)
                      100 PSET(X,Y)
                      110 NEXT t
                      120 END

極形式のグラフ



アステロイド>

                      10 LINE(0,384)-(1020,384):LINE(512,0)-(512,764)
                      20 INPUT "a=";a
                      30 FOR t=0 TO 2*3.14159 STEP 3.14159/360
                      40 X=(a*(COS(t))^3)*20+512
                      50 Y=(a*(SIN(t))^3)*20+384
                      60 SLEEP 10
                      80 PSET(X,Y)
                      90 NEXT t
                      100 END

アステロイド



エピサイクロイド

                      10 LINE(0,384)-(1020,384):LINE(512,0)-(512,764)
                      20 INPUT "a=";a
                      30 INPUT "b=";b
                      40 FOR t=0 TO 2*3.14159 STEP 3.14159/360
                      50 SLEEP 10
                      60 X=INT(((a+b)*COS(t)-b*COS((a+b)/b*t))*20+512)
                      70 Y=INT((-(a+b)*SIN(t)+b*SIN((a+b)/b*t))*20+384)
                      80 PSET(X,Y),6
                      90 NEXT t
                      100 END

エピサイクロイド



リサージュ曲線

                      10 LINE(0,384)-(1020,384):LINE(512,0)-(512,764)
                      20 INPUT "a=";a
                      30 INPUT "b=";b
                      40 FOR t=0 TO 2*3.14159 STEP 3.14159/720
                      50 P=SIN(a*t):Q=SIN(b*t)
                      60 SLEEP 20
                      70 X=INT(P*180+512)
                      80 Y=INT(-Q*180+384)
                      90 PSET(X,Y)
                      100 NEXT t
                      110 END

リサージュ曲線