사용자가 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