Pour trouver la racine carrée d'un nombre , vous avez besoin de savoir l'opération inverse de la multiplication d'un nombre par lui-même. Bien que le langage de programmation Java fournit une fonction intégrée " Math.sqrt ()" pour calculer la racine carrée d'un nombre quelconque , il accepte seulement un double type de données à virgule flottante de valeur. Cependant, vous pouvez avoir besoin pour trouver la racine carrée d'un nombre dans un type de données différent . A cet effet , vous pouvez construire une fonction personnalisée pour calculer la valeur de la racine carrée manuellement . Instructions
1
définir une méthode pour calculer la racine carrée . Vous devez donner la méthode un nom descriptif qui reflète sa fonction. Assurez-vous que tous les éléments nécessaires d'une méthode sont présents , à savoir son type de retour , nom, enfermant entre parenthèses pour les arguments de la méthode et de la déclaration de corps entre accolades. Par exemple, une méthode appropriée pour obtenir la racine carrée d'un nombre est :
publique BigDecimal get ( BigDecimal n) {}
2
complète le code du corps de la méthode en écrivant un algorithme pour le calcul de l'approximation de la racine carrée d'un nombre . Vous pouvez utiliser la méthode d'itération de Newton pour former les bases mathématiques de votre calcul. Dans cette méthode , vous pouvez calculer la racine carrée d'un nombre en résolvant l'équation à plusieurs reprises récurrente xk + 1 = 1/2 ( XK + n /xk) jusqu'à ce que la valeur d'approximation se rapproche de la valeur réelle de la racine carrée . Par exemple, ce qui suit est un segment de code en Java qui effectue ce calcul : Photos
itérations = 0;
booléen plus = true;
tout (plus) {< br >
lastGuess = deviner ;
deviner = n.divide ( supposition, échelle, BigDecimal.ROUND_HALF_UP ) ;
deviner = guess.add ( lastGuess ) ;
deviner = guess.divide (deux, échelle, BigDecimal.ROUND_HALF_UP ) ;
trace (" conjecture suivante " + guess.toString ());
erreur de
= n.subtract ( guess.multiply ( supposition ) ) ;
if ( + + itérations > = maxIterations ) {
plus = false; }
else if ( lastGuess. equals ( supposition )) {
plus
= compareTo (ONE) > = 0 error.abs ();
. } }
retour
conjecture ;
3
définir d'autres méthodes de soutien à la principale méthode de recherche de la racine carrée, chaque fois que nécessaire . Vous pouvez trouver vous-même avoir besoin de définir des méthodes pour trouver la valeur initiale d'approximation , calculer l'erreur et définir le nombre d'itérations. Par exemple , le code suivant trouve la valeur de rapprochement initial pour être utilisé dans le calcul principal :
privé getInitialApproximation BigDecimal statique ( BigDecimal n) {
BigInteger integerpart = n.toBigInteger (); < . br>
int length = integerPart.toString () de longueur ();
if (( longueur % 2) == 0) {
longueur de
- ;
< p> }
longueur /= 2;
BigDecimal conjecture = ONE.movePointRight (longueur) ;
conjecture de retour;
}
4
Testez votre méthode de la racine carrée en l'appelant et en affichant le résultat à l'écran . Par exemple:
System.out.println (" Le calcul de la racine carrée de ");
sqrt = app.get (n);
< br > Photos