Comment programmer un message d'erreur

ayoub1bdb Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je suis débutant en programmation shell et j'ai essayer de programme ce exo mais à l'etape du message d'erreur je ss bloque.
Écrire un script qui donne les valeurs de Y=10X+3X² pour de valeurs allant de x à
x' avec un incrément de z. Les valeurs x, x' et z seront passé en paramètres sur la
ligne de commande.

solution:
--------------
#!/bin/sh
if [ $# -eq 3 ]
then
x=$1
xp=$2
z=$3
inc=$1

while [ $inc -le $xp ]
do
let b2=3*inc*inc
let resultat=10*inc+b2
echo "10X+3X² avec X=$inc donne $resultat"
let inc=inc+z
done
else
echo "Syntaxe : $0 [x] [x'] [pas]"
fi

----------------------
la question et comment je peux faire le reste de cette exo. comme ci dessous :

L'affichage du résultat sera comme suit :
Les paramètres X, X' et Z seront passés sur la ligne de commande à condition que
X doit être inférieur à X'.
Si l'utilisateur n'a pas passé les paramètres sur le terminal ou s'il tape le paramètre
X > X', le terminal va afficher comme message d'erreur comme :

Erreur de syntaxe, vous devez entrer X, X' et Z (X doit être inférieur à X').
A voir également:

1 réponse

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Salut,

De la même façon que tu as fait
if [ $# -eq 3 ]; then ...
, tu fais un test sur tes paramètres.

man bash (Évaluation arithmétique)
1
Utilisateur anonyme
 
salut,

sans oublier que les messages d'erreurs doivent être envoyés sur la sortie d'erreur:
=>
echo "erreur" >&2
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Aie aussi,

Déjà s'il l'envoie sur la sortie standard, il aura fait un grand pas ;-)
0