Estimación de Pi mediante simulacion

Contrario al número PI este post podría resultar intrascendente y nada útil desde el punto de vista de aquella persona ligada con las finanzas tradicionales, sin embargo la simulación es una gran herramienta para el geek financiero que toma decisiones bajo incertidumbre, por lo que basicamente este post nos muestra el punto de partida.

El proceso inicia generando puntos que caigan practicamente en un cuadrado y como nuestro generador es uniforme éstos deben distribuirse uniformente en él, y simplemente identificamos cuales caen dentro del circulo, la relación entre las áreas nos permitirá estimar PI, que fácil no.
Descarga

Public Sub Simulacion()
Dim a As Long, i As Long, ndentro As Long
Dim x As Single, y As Single, r As Single
i = 0: ndentro = 0
Do
a = Val(InputBox("Ingrese Numero de Interaciones"))
i = i + 1
If i = 3 Then MsgBox "No juegues!!!": Exit Sub
If a > 64800 Then MsgBox "Disminuye el nro de iteraciones": a = -1
Loop While (a <= 0)
Cells(7, 2).CurrentRegion.Clear
Randomize
For i = 7 To a + 6
x = 2 * Rnd() - 1
y = 2 * Rnd() - 1
Cells(i, 2) = x
Cells(i, 3) = y
r = (x ^ 2 + y ^ 2) ^ (1 / 2)
If r < 1 Then
ndentro = ndentro + 1
End If
Next i
Cells(7, 6) = 4 * (ndentro / a)
End Sub

No hay comentarios:

Publicar un comentario

Comparte esto:

Related Posts with Thumbnails