// Monte Carlo Method
const maxn = 1000000;
let count = 0;
for (let i = 0; i < maxn; i++) {
let x = Math.random() * 2 - 1; // full circle
let y = Math.random() * 2 - 1;
if (x * x + y * y <= 1) {
count = count + 1;
}
}
const mypi = count * 4 / maxn;
let devi = 100 * Math.abs(Math.PI - mypi) / Math.PI;
console.log(`Estimate: ${mypi.toFixed(4)}, Deviation: ${devi.toFixed(2)}%`);
Ly8gTW9udGUgQ2FybG8gTWV0aG9kCgpjb25zdCBtYXhuID0gMTAwMDAwMDsKbGV0IGNvdW50ID0gMDsKCmZvciAobGV0IGkgPSAwOyBpIDwgbWF4bjsgaSsrKSB7CglsZXQgeCA9IE1hdGgucmFuZG9tKCkgKiAyIC0gMTsgIC8vIGZ1bGwgY2lyY2xlCglsZXQgeSA9IE1hdGgucmFuZG9tKCkgKiAyIC0gMTsKCWlmICh4ICogeCArIHkgKiB5IDw9IDEpIHsKCQljb3VudCA9IGNvdW50ICsgMTsKCX0KfQoKY29uc3QgbXlwaSA9IGNvdW50ICogNCAvIG1heG47CmxldCBkZXZpID0gMTAwICogTWF0aC5hYnMoTWF0aC5QSSAtIG15cGkpIC8gTWF0aC5QSTsKY29uc29sZS5sb2coYEVzdGltYXRlOiAke215cGkudG9GaXhlZCg0KX0sIERldmlhdGlvbjogJHtkZXZpLnRvRml4ZWQoMil9JWApOw==