Factorielle sous Unix (Résolu)

Factorielle sous Unix (Résolu) - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 18-02-2009 à 13:47:53    

Bonjour,
J'ai codé un script affichant le résultat de la factorielle d'un nombre passé en paramètre comme suit:
 

Code :
  1. #!/bin/bash
  2. if [ a >= 0 ]; then
  3.     factorielle = 1
  4.     if [ $a > 0 ]; then
  5.     while [ $a -ne 1 ]; do
  6.  let factorielle = $factorielle*a
  7.         let a = $a-1
  8.     done
  9. echo $factorielle
  10.     else
  11. echo "Tape pas un nombre négatif!"
  12.     fi
  13. fi


 
Mais j'ai une erreur me disant: ./factorielle.sh: line 5: [: a: unary operator expected
Pourquoi?
Merci d'avance


Message édité par User Name le 18-02-2009 à 14:33:08

---------------
"Pour diriger un troupeau de 1000 vaches, il faut 1 bâton. Pour diriger un troupeau de 1000 hommes, il faut 1000 bâtons. Pour diriger un troupeau de 1000 français, il faut beaucoup beaucoup de bâtons." - Proverbe africain
Reply

Marsh Posté le 18-02-2009 à 13:47:53   

Reply

Marsh Posté le 18-02-2009 à 14:04:55    

Problème avec ta condition du while [:spamafote]

Reply

Marsh Posté le 18-02-2009 à 14:31:59    

$a n'a pas de valeur...


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 18-02-2009 à 14:32:34    

Effectivement,
Les opérateurs n'étaient pas bons non-plus (je confonds beaucoup Unix avec Java) et il n'y a pas d'espaces autour des "=".
 
Ligne 12: let factorielle = $factorielle*$a
 
Merci de votre aide!


Message édité par User Name le 18-02-2009 à 14:33:00

---------------
"Pour diriger un troupeau de 1000 vaches, il faut 1 bâton. Pour diriger un troupeau de 1000 hommes, il faut 1000 bâtons. Pour diriger un troupeau de 1000 français, il faut beaucoup beaucoup de bâtons." - Proverbe africain
Reply

Marsh Posté le 18-02-2009 à 14:48:16    

la prochaine fois tu pourras faire ton exo seul comme ça ;)


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Sujets relatifs:

Leave a Replay

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