SGN |
Signe |
---|---|
ASP 3.0 |
Syntaxe
Function SGN(n As Variant) As Integer |
Paramètres
Nom | Description |
---|---|
n | Ce paramètre permet d'indiquer l'expression contenant le nombre à traiter |
Retour
Valeur | Description |
---|---|
-1 | Cette valeur indique un nombre négatif |
0 | Cette valeur indique un nombre nulle |
1 | Cette valeur indique un nombre positif |
Description
Cette fonction retourne le signe d'un nombre.
Algorithme
MODULE SGN(valeur) SI valeur < 0 ALORS RETOURNE -1 SINON SI valeur = 0 ALORS RETOURNE 0 SINON RETOURNE 1 FIN SI |
Remarques
- La fonction SGN (abréviation de "sign") permet de déterminer rapidement la nature d'un nombre : négatif, nul ou positif. Elle est particulièrement utile pour effectuer des traitements conditionnels basés sur la direction ou le sens d'une valeur numérique.
- SGN retourne une valeur entière standardisée : -1 pour les valeurs négatives, 0 pour les valeurs nulles et 1 pour les valeurs positives. Cela permet de simplifier les tests logiques dans les blocs de code sans avoir à réécrire des comparaisons complexes.
- Cette fonction accepte un paramètre de type Variant, ce qui signifie qu'elle peut traiter différents types numériques (entiers, réels,...) sans qu'il soit nécessaire de faire une conversion préalable.
- L'utilisation de SGN est idéale dans les algorithmes mathématiques, notamment ceux impliquant des comparaisons de tendances (par exemple, montante ou descendante), des contrôles de seuil, ou encore des calculs vectoriels simples.
- Il est possible d'utiliser SGN pour effectuer des opérations conditionnelles plus élégantes : par exemple, au lieu d'utiliser une structure IF THEN ELSE, on peut directement utiliser la valeur retournée pour orienter un calcul ou une logique métier.
- Cette fonction est aussi utile dans les routines de gestion d'erreurs numériques ou de validation de données, où l'on souhaite détecter rapidement si une valeur est en dehors d'une zone attendue (par exemple, inférieure ou supérieure à zéro).
- SGN peut également être utilisé pour construire des fonctions personnalisées de normalisation ou d'inversion de signes, puisqu'il donne une base simple à partir de laquelle on peut multiplier ou rediriger des valeurs.
- Attention à ne pas confondre SGN avec des fonctions de comparaison directe comme >, <, ou =. SGN ne teste pas une condition, il transforme une valeur numérique en son équivalent symbolique de signe. C'est un outil de transformation, pas une condition.
Exemple
Voici un exemple d'une utilisation typique de cette fonction :
- <%
- Response.Write "Sgn(-910) = " & Sgn(-910) & "<br />"
- Response.Write "Sgn(-1) = " & Sgn(-1) & "<br />"
- Response.Write "Sgn(0) = " & Sgn(0) & "<br />"
- Response.Write "Sgn(10) = " & Sgn(10) & "<br />"
- Response.Write "Sgn(1) = " & Sgn(1) & "<br />"
- Response.Write "Sgn(100) = " & Sgn(1000) & "<br />"
- %>
on obtiendra le résultat suivant :
Sgn(-910) = -1Sgn(-1) = -1
Sgn(0) = 0
Sgn(10) = 1
Sgn(1) = 1
Sgn(100) = 1
Voir également
Articles - Les géants de l'informatique - Microsoft
Dernière mise à jour : Vendredi, le 10 octobre 2014