Bash - 特定のパラメータ内でより大きく、より低い

Bash - 特定のパラメータ内でより大きく、より低い

単純な乱数推測ゲームを開発していますが、いくつかの難しさに固執しました。コアゲームが動作していますが、もっと欲しいです。たとえば、nonceが10(より高いまたは低い)以内にある場合は、別のメッセージが届きます。

#!/bin/bash

name=Jack

num=$(( 1+$RANDOM%101 ))
echo $num

target=$num
goes=0

until [[ $guess -eq $target ]]
do
    goes=$(( $goes+1 ))
    echo "Guess $goes. Enter a number between 0 and 100"
    read guess


    if [[ $((number - $guess)) -gt 10 ]] 
    then
        echo "Too low"

    elif [[ $((guess - $number)) -gt 10 ]]
    then
        echo "Too high"


    elif [[ $(($number - $guess)) -le 10 ]] 
    then 
        echo "You are within ten"

    elif [[ $(($guess - $low)) -le 10 ]] || 
    then
        echo "You are within ten"

    fi
done

echo "Well done $name, it took $goes goes to guess $num"

どんな助けでも大変感謝します。

ベストアンサー1

最初のステートメントを変更し、最後の部分をelifステートメントとして追加します。

if [[ $((number - $guess)) -gt 10 ]] 
then
    echo "Too low"

elif [[ $((guess - $number)) -gt 10 ]]
then
    echo "Too high"


elif [[ $(($number - $guess)) -le 10 ]] 
then 
    echo "You are within ten but too low"

elif [[ $(($guess - $number)) -le 10 ]]
then
    echo "You are within ten but too high"
fi

おすすめ記事