0
私はScalaでMonte Carloアルゴリズムのバージョンを実装しようとしていますが、少し問題があります。 私の最初のループでは、UnitとIntのミスマッチがありますが、これをどうやってスービングするのか分かりませんでした。Scala Mismatch MonteCarlo
ありがとうございました!
import scala.math._
import scala.util.Random
import scala.collection.mutable.ListBuffer
object Main extends App{
def MonteCarlo(list: ListBuffer[Int]): List[Int] = {
for (i <- list) {
var c = 0.00
val X = new Random
val Y = new Random
for (j <- 0 until i) {
val x = X.nextDouble // in [0,1]
val y = Y.nextDouble // in [0,1]
if (x * x + y * y < 1) {
c = c + 1
}
}
c = c * 4
var p = c/i
var error = abs(Pi-p)
print("Approximative value of pi : $p \tError: $error")
}
}
var liste = ListBuffer (200, 2000, 4000)
MonteCarlo(liste)
}
通常、Pythonを使用している男。