プロが教える店舗&オフィスのセキュリティ対策術

(1)同心円を描くプログラムを作成しなさい
(2)Sin、Cos曲線上で円を描くプログラムを作成しなさい
上の2つの問題です。
僕はプログラムに関してまったくの素人です。専攻も情報系ではないのに、なぜか授業でプログラムのレポートが出て困っています。
専門の方にとって、この問題が難しいのかどうかもわからないのですがどうぞお願いします。

A 回答 (4件)

中心がサインカーブの曲線上にある円の軌跡のプログラム


です。課題はこんなものでしょうか。
15や1000を掛けているのは特徴を出すために
拡大しているためです。
Private Sub Form_Click()
pai = 3.141592
For i = -360 To 360 Step 10
j = Sin(i * pai / 180) * 1000
cir i * 15 + 2000, j + 2000
Next i
End Sub

Function cir(i, j)
r = 400
For x = -r To r
y = Sqr(r ^ 2 - x ^ 2)
Form1.PSet (x + i, y + j)
Next x
For x = -r To r
y = -Sqr(r ^ 2 - x ^ 2)
Form1.PSet (x + i, y + j)
Next x
End Function
    • good
    • 0
この回答へのお礼

ありがとうございます!できました!
何度も書き込んでいただいて感謝してます。
人に頼って情けないですけどレポートできそうです。

お礼日時:2002/01/24 01:17

先の回答に誤りがあり訂正します。


それと前半の回答だけで済みません。
Private Sub Form_Click()
For i = 0 To 900 Step 100
r = 1000 - i
For x = -r To r
y = Sqr(r ^ 2 - x ^ 2)
Form1.PSet (x + 1000, y + 1000)
Next x
For x = -r To r
y = -Sqr(r ^ 2 - x ^ 2)
Form1.PSet (x + 1000, y + 1000)
Next x
Next i
End Sub
上記ではPsetを使っていますが、xの区画を小さくしてLineを使うようです。
    • good
    • 0

全く素人初歩的な回答でお恥ずかしいですが、分かって


いただければ。次ぎのステップでクリックしてください。
デスクトップの「プログラム」-MicrosoftVisualBasic6.0-
MicrosoftVisualBasic6.0-標準EXE-開く-Form1が出る
-表示-コード-(下記のコードを入力)-実行-Form1をクリックで円が描けます。
Private Sub Form1_Click()
For x=-1000 to 1000 Step 1
y=Sqr(1000000-x^2)
Form1.PSet(x+1000,y+1000)
Next x
'-------------
For x=-1000 to 1000 Step 1
y=-Sqr(1000000-x^2)
Form1.PSet(x+1000,y+1000)
Next x
End Sub
1000のところを変えると同心円が描けます。
例えばiを導入して最初の行に
For i=100 to 1000 step 100 を入れ
上記のプログラムを打ち込んで
x+1000のところを x+1000-i
y+1000のところを y+1000-i に変える。
next i で締めくくると良い。
x^2はxの2乗、1000000は1000の2乗
Step 1は1刻みで増やすこと、Sqrは平方根
Form1.Pset(x、y)はForm上の(x、y)に点を
打つこと、(0,0)はFormの左上隅にあって座標の第4象限のようなイメージです。中心は点(1000,1000)にして円を描いています。
    • good
    • 0

前提条件がまったく分からないのですが、座標等を自分で計算して描けということでしょうか?


それとも、とにかく何でもいいから円を描けということでしょうか?
前者であれば、数学の知識を使って画面に点を打つ方法が簡単ですし、
後者で有れば、円を描く命令を使ってしまうのが一番簡単です。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!