public class randomPoints {
double x;
double y;
static int intersect = 0;
static int total = 0;
public double getx() {
return this.x;
}
public double gety() {
return this.y;
}
randomPoints() {
x = (Math.random() );
y = (Math.random() );
randomPoints points = sndP(new randomPoints(x, y));
double a = points.getx();
double b = points.gety();
if (b>1&&y>0) {
intersect++;
}
total++;
}
randomPoints(double xy, double yx) {
x = xy;
y = yx;
}
public static randomPoints sndP(randomPoints p) {
double a = Math.random() + p.x - 0.5;
boolean c = Math.random() - 0.5 > 0;
double b;
if (c) {
b = p.y + (double) Math.sqrt(0.25 - (a - p.x) * (a - p.x));
} else {
b = p.y - (double) Math.sqrt(0.25 - (a - p.x) * (a - p.x));
}
return new randomPoints(a, b);
}
public static void main(String[] args) {
for (int i = 0; i <= 999999999; i++) {
randomPoints points = new randomPoints();
// System.out.print(points.x+" "+points.y+"\n" );
}
float c = (float)intersect / (float)total;
System.out.print(4*c);
}
}