Précédent
- 1
- 2
-
L'algo est dans les commentaires. Dans un éditeur qui colore les lignes c'est lisible.
EN effet j'ai changé la lecture d'un élément du tableau.
Le message d'erreur reste : unary operator expected
Pourtant j'ai essayé d'initialiser la première case du tableau. -
DEBUT
#création du fichier ventesdate_du_jour.txt
#écriture des deux premières lignes dans le fichier
afficher("blablabla")
afficher("blablabla")
#initialisation des vraiables
k <--0
j <--0
i <-- 0
montantTotal <--0
tableau <-- 0
tant que (i <= nbLignes du fichier ventesJour.txt)
faire
reference <-- (la reference du produyit de la ligne i)
#verification que referejnce n'a pas deja ete traitee
tant que ((tableau[j] != reference) OU ( j < k )
faire
j++
ftq
#si j=tailleTableau alors reference pas trouvee et on la traite
si ( j = k ) alors
traitement des montants et quantites
fsi
#on passe a la ligne suivante
i++
ftq
FIN -
-
Mais il semblerait que l'erreur se trouve sur le test du second while :
while [ $tableau[$j] -ne $reference ] || [ $j -lt $k ] do let j=$j+1 done
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
Salut,
Déjà il y a une erreur dans : nbLigneTotal=`wc -l ventesJour.txt`
La sortie de cette commande ne renvoie pas un nombre seul, mais un nombre suivi du nom du fichier, donc forcément le test qui s'en suit foire ;-((
Mieux vaut utiliser la syntaxe : cat ventesJour.txt | wc -l
Autre chose, mieux vaut privilégier la syntaxe $(commande) plutôt que l'emploi des quotes inversées `commande`...
donc :nbLigneTotal=$(cat ventesJour.txt | wc -l)
et dans le même esprit :date_du_jour=$(date +"%D)
Il y a aussi une erreur dans le test suivant : while [ i -le nbLigneTotal ]
Il manque le signe "$" à ta variable "while [ i -le $nbLigneTotal ]"
Change ça déjà et puis on verra...
Précédent
- 1
- 2