処理はJavaを使用する環境です。私はPiの値を計算するためにMonte Carloメソッドを使用しようとしています。私はダーツボード(四角形内の円)を作成しようとしており、ランダムに選択された点が円内で選択されると「はい」を返します。処理中のPiの値の計算
処理では、左上隅を原点とし、右向きを正のx軸、下向きを正の y軸とする座標系を使用します。
はここに私のコードです:
float circleX;
float circleY;
float r;
void setup() {
size(360, 360);
circleX = 50;
circleY = 50;
frameRate(0.5);
}
void draw() {
background(50);
fill(255);
stroke(255);
fill(100);
ellipse(180, 180, 360, 360);
ellipse(circleX, circleY, 10, 10);
circleX = random(360);
circleY = random(360);
r = (circleX-180)*(circleX-180) + (180-circleY)*(180-circleY);
if (r < 32400) {
print("Yes! ");
}
}
しかし、多くの場合には、円内に「はい」返されませんし、円の外側の点は返さないポイント「はい。」何が間違っているかに関するアイデア?あなたは、ランダムな座標を生成し、それを描くライン交換する必要が
2番目の円( 'ellipse(circleX、circleY、10、10);)とは何ですか? 'circleX'と' circleY'の値が更新される前に描画されます。 – Sentry