早上好,当我早些时候从事这个项目时,我有点面对这个难题,它像这样: 我需要更改此游戏中玩家的得分,这取决于该玩家做出的尝试,如果他猜想在第一次尝试中写的话,他会得到3分,第二次获得2分,而睫毛练习则获得1分,这样就可以清楚地看到这一点。我的代码是这样的:
#!/bin/bash
tentative=3
cpt=0
score=0
echo "Votre nombre de tentative est 3"
cut -d: -f3 Facile.txt
MotCorrect=$(cut -d: -f2 Facile.txt )
while [ $cpt -lt 3 ]
do
echo "QuiSuisJe?"
read QuiSuisJe
`enter code here`cpt=`expr $cpt + 1`
if [ $QuiSuisJe == $MotCorrect ]
then
echo "Correct"
cptScore=`expr $cptScore+3`
score=$((score+3))
echo "$score"
break
else
tentative=`expr $tentative - $cpt`
echo "Votre reponse n'est pas Correct."
fi
done
答案 0 :(得分:0)
您描述的函数“尝试次数”->“得分”是score(tries) = 4 - tries
:
tries score 4 - tries
1 3 3
2 2 2
3 1 1
您当前的代码保持$cpt
变量中的尝试次数,因此我将从该变量中得出分数:
score=$(( 4 - cpt ))
作为旁注,似乎您在滥用$tentative
变量。据我所知,它应该描述最大尝试次数,在这种情况下:
$cpt
在if / else之外进行了处理)echo
输出用户尝试了多少次,以及在while
的条件下测试用户是否已达到最大尝试次数。尝试。