Обработка - это среда, в которой используется Java. Я пытаюсь использовать метод Монте-Карло для вычисления значения Pi. Я пытаюсь создать мишень (круг в квадрате) и возвращать «Да», когда случайно выбранная точка выбрана в пределах круга.Вычисление значения 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! ");
}
}
Однако, во многих случаях, указывает внутри круга, не возвращаются «Да,» и указывает за пределы круга, возвратившимся «Да.» Любые идеи о том, что не так?
Что такое второй круг ('эллипс (circleX, circleY, 10, 10);')? Он нарисован до того, как будут обновлены значения для 'circleX' и' circleY'. – Sentry