ユーザーが5(antall)を選択したとします。その後、5+6+7+8+4を(即座に)印刷したいと思います。私のスクリプトには、次のものが印刷されます。
5+6+7+8+4**+**
最後の+を削除する方法は? ? (forループでecho "+"を試しましたが、正しく理解できませんでした)
私のスクリプト:
plusse () {
while true; do
random=0
summit=0
read -p "Hvor mange tall vil du plusse>> " antall
echo "Hva er? "
for (( i=1; i<=$antall; i++ )); do
random=$(( RANDOM % 10 ))
summit=$(( summit + $random ))
echo -n "$random "
echo -n "+"
done
echo
read -p "Svaret mitt er>> " svarr
echo "$summit"
if [[ $svarr == $summit ]]; then
echo "Gratulerer! $svarr er riktig svar! "
read -p "Vil du fortsette?>> " fortsette
case $fortsette in
ja|j|JA|Ja|y|Yes) continue
;;
nei|n|Nei|n|N) break 1
;;
*) exit 1
;;
esac
else
echo "Beklager, $svarr er feil. Riktig svar er $summit"
read -p "Vil du fortsette?>> " fortsette
case $fortsette in
ja|j|JA|Ja|y|Yes) continue
;;
nei|n|Nei|n|N) break 1
;;
*) exit 1
;;
esac
fi
done
}
ベストアンサー1
あなたのコード:
for (( i=1; i<=$antall; i++ )); do
random=$(( RANDOM % 10 ))
summit=$(( summit + $random ))
echo -n "$random "
echo -n "+"
done
〜するいつも+
選択した番号の後にを追加してください。次の操作を実行できます。
prefix=""
for (( i=1; i<=$antall; i++ )); do
random=$(( RANDOM % 10 ))
summit=$(( summit + $random ))
echo -n "${prefix}${random}"
prefix="+"
done