convertir nombre négatif en positif

convertir nombre négatif en positif - Shell/Batch - Programmation

Marsh Posté le 01-03-2007 à 11:18:11    

Bonjour,
 
Existe t-il une commande sous unix qui permet de convertir un nombre négatif en positif ?
 
J'ai fait un script dans lequel je voudrais que si l'utilisateur rentre un nombre négatif en argument je le convertisse en positif.
 
Merci pour vos aides
 
Cordialement Exile

Reply

Marsh Posté le 01-03-2007 à 11:18:11   

Reply

Marsh Posté le 01-03-2007 à 11:42:25    

tu applique cette formule : arg=arg-(arg*2)  :)

Reply

Marsh Posté le 01-03-2007 à 13:55:09    

Shell-script c'est cool, mais lequel, de shell ?
 
Si tu es en ksh :

$ typeset -i machin
$ machin=-1
$ echo $machin
-1
$ machin=-$machin
$ echo $machin
1
$


Reply

Marsh Posté le 01-03-2007 à 13:57:46    

nicodu95 a écrit :

tu applique cette formule : arg=arg-(arg*2)  :)

 

Ca, par exemple ?

$ machin=-1
$ machin=$machin-$machin*2        
$ echo $machin
-1--1*2

 

[:el g]


Message édité par Elmoricq le 01-03-2007 à 13:57:52
Reply

Marsh Posté le 02-03-2007 à 21:17:10    

exile a écrit :

Bonjour,
 
Existe t-il une commande sous unix qui permet de convertir un nombre négatif en positif ?
 
J'ai fait un script dans lequel je voudrais que si l'utilisateur rentre un nombre négatif en argument je le convertisse en positif.
 
Merci pour vos aides
 
Cordialement Exile


 
Un nombre négatif est un nombre commençant par "-"

if test "`echo $1 |cut -c1`" = "-"
then
     # Nombre négatif - On supprime ce "_"
     nb=-$1
else
     # Nombre positif
     nb=$1
fi


 
Et ce petit script permet de vérifier que ton argument $1 est bien un nombre (une chaîne pouvant commencer par "-", puis suivie de chiffres contenant éventuellement un "." )

# Suppression de chaque chiffre, du premier "." et du signe "-" s'il est en début de nombre
nb=`echo $1 |sed –e "s/[0-9]//g" –e "s/\.//" –e "s/^-//"`
 
# Si le résultat est vide, c'est que $1 était un nombre correct
test –z "$nb" && echo "L'argument $1 est un nombre" || echo "L'argument $1 n'est pas un nombre"


Message édité par Sve@r le 02-03-2007 à 21:18:34

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 04-03-2007 à 01:12:15    

[:el g]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed