Cet article décrit le calcul simple de Pi en Java. Partagez-le pour votre référence, comme suit:
J'ai vu une question sur Internet ces deux jours. Il est connu que PI peut être calculé en utilisant la fonction 4 * (1 1/3 + 1/5 1/7 +…) pour calculer les cinq décimales (calculer le PI). J'ai donc écrit une petite démo manuellement, et tout le monde est le bienvenu pour laisser un message, communiquer et donner des conseils.
L'exemple de code complet est le suivant:
Package math; public class Pitest {private static int bytelimit = 5; // limiter le nombre de chiffres après décimal / ** * @author zhao33699 * / public static void main (String [] args) {// too a été généré par le talon de méthode générée par auto // ---- Calculez PI // IDEA: Calculez la valeur 5 bits en fonction de la formule ci-dessus, comparez-la avec la valeur 5 bits suivante, si la même chose, c'est le résultat final, // s'il est différent, enregistrez la nouvelle valeur et continuez à le comparer avec la valeur suivante jusqu'à ce que le même double PiTEMP = 0; // la valeur obtenue par la formule soit double Finalpi = 0; // Dernière valeur obtenue (cinq décimales) double pi = 0; // cette valeur obtenue (cinq décimales) int i = 0; // compteur double b = 0; // La valeur entre parenthèses de la formule est int ii = 20; // le nombre de fois que la même valeur peut être limitée à la même valeur obtenue int finii = 20; // la même valeur de II, est utilisée pour restaurer la valeur II après la valeur II des modifications / les modifications INT / IN iii = 20; // limiter le même nombre de fois tandis que (true) {// nombre de fois de contrôle if (i == 1000000) {break; } double rs = 1 + 2 * i; double d = 1 / rs; if (i% 2 == 0 && i! = 1) {b = b + d; // System.out.println ("---" + i + "---------- ***" + b); } else {b = b - d; // System.out.println ("---" + i + "----------- ***" + b); } i = i + 1; // System.out.println (b); PitEmp = (b) * 4; // System.out.println (PITEMP); // Le nombre de chiffres après le point décimal est supérieur ou égal à 5 chiffres if (String.Valueof (PiTEMP) .length ()> bytelimit) {pi = subinty (PiTEMP); // intercepter la valeur de 5 chiffres après le point décimal System.out.println (i + "Time - Pi - ####" + pi + "- final - # # finalpi); // Si le dernier résultat est le même que ce résultat, limitez le nombre de temps consécutifs -1; // Si ce n'est pas le même, quel que soit le nombre de fois consécutifs, le résultat précédent est le même, limitez le nombre de temps consécutifs pour restaurer la valeur initiale et enregistrez la nouvelle valeur de cette époque, et continuez à se préparer à la comparaison avec la prochaine fois if (finalpi + 1 - ii) + "Time ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 0); System.out.println ($ final décimal "+ pi); ss = string.valueof (i) .substring (bytelimit + 2, bytelimit + 3); // obtenez le 6ème point décimal double dd = double.parsedouble (s); // converti en un point décimal pour conserver les 5 places décimales // si la valeur du 6ème chiffre est plus importante à 5, selon le ralenti (ss.compareto ("5")> = 0) {dd = dd + 0,00001;} return dd;Résultats en cours:
PS: Voici quelques outils de calcul à référence à:
Outil de calcul de la solution de fonction unary en ligne (EQ):
http://tools.vevb.com/jisuanqi/equ_jisuanqi
Calculatrice scientifique en ligne use_advanced calculator calculateur en ligne:
http://tools.vevb.com/jisuanqi/jsqkeexue
Calculatrice en ligne_standard Calculatrice:
http://tools.vevb.com/jisuanqi/jsq
Pour plus d'informations sur les algorithmes Java, les lecteurs qui sont intéressés par ce site peuvent afficher les sujets: "Structure de données Java et tutoriel d'algorithme", "Résumé des conseils de nœud de Dom Operation Java", "Résumé du fichier Java et des conseils d'opération de répertoire" et "Résumé des conseils d'opération Java Cache"
J'espère que cet article sera utile à la programmation Java de tous.