Comment faire la racine carrée d'un nombre négatif en JavaScript

王林
Libérer: 2023-05-09 20:54:36
original
763 Les gens l'ont consulté

JavaScript est un langage de programmation largement utilisé dans le développement web, et ses fonctions mathématiques sont des composants très importants. Cependant, JavaScript peut rencontrer certains défis lorsqu'il s'agit d'opérations mathématiques sur des nombres négatifs. Dans cet article, nous verrons comment prendre la racine carrée d'un nombre négatif en JavaScript, y compris les défis possibles et comment les résoudre.

Tout d'abord, nous devons comprendre la fonction Math.sqrt() en JavaScript. Cette fonction est utilisée pour calculer la racine carrée d'un nombre non négatif. Par exemple, si l'on voulait calculer la racine carrée de 9, on pourrait écrire :

var result = Math.sqrt(9);
console.log(result); // 输出 3
Copier après la connexion

Cependant, on rencontre des problèmes lorsqu'on veut calculer la racine carrée d'un nombre négatif. Par exemple, si nous essayons de calculer la racine carrée de -9, nous obtenons NaN (pas un nombre) :

var result = Math.sqrt(-9);
console.log(result); // 输出 NaN
Copier après la connexion

C'est parce que la fonction racine carrée n'a aucun sens pour les nombres négatifs, donc JavaScript renvoie NaN pour indiquer qu'il ne peut pas être calculé. Cependant, nous devons parfois calculer la racine carrée d’un nombre négatif. Dans ce cas, que devons-nous faire ?

Une solution consiste à convertir le nombre négatif en nombre complexe puis à calculer sa racine carrée. Les nombres complexes sont constitués de parties réelles et imaginaires et peuvent être représentés sous forme d'objets en JavaScript. Par exemple, -9 peut être exprimé sous la forme plurielle suivante :

var complex = {
  real: 0,
  imag: Math.sqrt(9)
};
Copier après la connexion

où la partie réelle est 0 et la partie imaginaire est 3. Le carré de ce nombre complexe est :

var square = {
  real: -9,
  imag: 0
};
Copier après la connexion

On peut utiliser la fonction Math.hypot() pour calculer sa longueur de module, puis en extraire la partie imaginaire pour obtenir la racine carrée : #🎜🎜 #

var modulus = Math.hypot(square.real, square.imag); // 模长为 9
var result = {
  real: 0,
  imag: Math.sqrt(modulus) // 平方根为 3
};
Copier après la connexion

Mais cette méthode est lourde et peut entraîner des problèmes de précision lors du calcul des racines carrées de nombres complexes.

Une autre solution plus simple consiste à utiliser la fonction Math.abs() pour obtenir la valeur absolue d'un nombre négatif et la convertir en nombre positif. On peut alors calculer sa racine carrée et multiplier par -1 à la fin pour obtenir le résultat correct. Par exemple, nous pouvons calculer la racine carrée de -9 comme ceci :

var result = Math.sqrt(Math.abs(-9)) * -1;
console.log(result); // 输出 3
Copier après la connexion
Dans cet exemple, nous utilisons d'abord la fonction Math.abs() pour obtenir la valeur absolue de -9, qui est 9 . Ensuite, on calcule la racine carrée de 9, ce qui nous donne 3. Enfin, on multiplie par -1 pour obtenir le résultat correct, qui est -3.

L'avantage de cette méthode est qu'elle est simple et facile à comprendre, et qu'elle peut éviter des problèmes de précision. Cependant, il est important de noter qu’avant de calculer la racine carrée, il faut d’abord obtenir la valeur absolue du nombre négatif.

Pour résumer, JavaScript peut effectuer la racine carrée de nombres négatifs en les convertissant en nombres complexes ou en utilisant la fonction Math.abs(). Nous devons choisir la méthode appropriée en fonction de la situation spécifique et faire attention à la gestion des problèmes que nous pouvons rencontrer.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!