Maison >Java >javaDidacticiel >Introduction à la méthode Java de calcul de la valeur pi à l'aide de Math.random() combinée à la méthode de Monte Carlo

Introduction à la méthode Java de calcul de la valeur pi à l'aide de Math.random() combinée à la méthode de Monte Carlo

巴扎黑
巴扎黑original
2017-09-19 11:38:031754parcourir

Cet article présente principalement comment Java utilise Math.random() combiné avec la méthode de Monte Carlo pour calculer la valeur pi. Il explique brièvement le principe de la méthode de Monte Carlo combinée à des exemples spécifiques et analyse l'utilisation des méthodes de Monte Carlo. en Java sur la base d'exemples spécifiques. Pour les compétences opérationnelles de calcul de la valeur PI par la méthode Carlo, les amis qui en ont besoin peuvent se référer à

Cet article décrit l'exemple de Java utilisant Math.random() combiné avec la méthode Monte Carlo. pour calculer la valeur pi. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

1 Aperçu

Méthode de Monte Carlo, également connue sous le nom de simulation statistique. La méthode est une méthode de calcul numérique très importante guidée par la théorie des probabilités et des statistiques qui a été proposée au milieu des années 1940 en raison du développement de la science et de la technologie et de l'invention des ordinateurs électroniques. Fait référence à une méthode d'utilisation de nombres aléatoires (ou plus communément de nombres pseudo-aléatoires) pour résoudre de nombreux problèmes informatiques. L’algorithme déterministe lui correspond.

Pour plus de détails, veuillez vous référer à l'Encyclopédie Baidu : https://baike.baidu.com/item/%E8%92%99%E7%89%B9%C2%B7%E5%8D%A1% E7%BD %97%E6%96%B9%E6%B3%95

Code de mise en œuvre


/**
 * Monte Carlo algorithm
 */
import java.math.*;
public class PI {
  /**
   * @param args
   */
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    double xf = 0.0d;
    double yf = 0.0d;
    int total = 0;
    for(int i = 0;i<1000000;i++){
      xf = Math.random();
      yf = Math.random();
      if(Math.sqrt(xf*xf+yf*yf) < 1)
        total++;
    }
    System.out.println("脚本之家测试结果:");
    System.out.println(4*(total/1000000.0));
  }
}

Résultat d'exécution :

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn