fork download
  1. using Random
  2. using Printf
  3.  
  4. # Función para estimar Pi usando el método de Monte Carlo
  5. function monte_carlo_pi(num_samples)
  6. inside_circle = 0
  7.  
  8. for _ in 1:num_samples
  9. x = 2 * rand() - 1 # Genera un número aleatorio entre -1 y 1
  10. y = 2 * rand() - 1 # Genera un número aleatorio entre -1 y 1
  11.  
  12. # Comprobar si el punto está dentro del círculo
  13. if x^2 + y^2 <= 1
  14. inside_circle += 1
  15. end
  16. end
  17.  
  18. # Estimación de Pi
  19. return 4 * inside_circle / num_samples
  20. end
  21.  
  22. # Número de muestras (puedes cambiar este valor)
  23. num_samples = 10000000
  24.  
  25. # Medir el tiempo de ejecución
  26. @time begin
  27. pi_estimate = monte_carlo_pi(num_samples)
  28. println("Estimación de Pi: $pi_estimate")
  29. end
  30.  
Success #stdin #stdout 0.35s 211332KB
stdin
Standard input is empty
stdout
Estimación de Pi: 3.1416468
  0.085203 seconds (68.97 k allocations: 3.791 MiB, 45.01% compilation time)