電卓を作ろうとしています。ユーザーは、番号1を入力して操作を選択し、番号2を入力してから、別の操作を選択するか、回答を表示します。
例えば。1 +1=または1+1 + 2 + 1 =
これらの両方が可能であるはずです。
read -p "what's the first number? " n1
PS3="what's the operation? "
select ans in add subtract multiply divide equals; do
case $ans in
add) op='+' ; break ;;
subtract) op='-' ; break ;;
multiply) op='*' ; break ;;
divide) op='/' ; break ;;
*) echo "invalid response" ;;
esac
done
read -p "what's the second number? " n2
ans=$(echo "$n1 $op $n2" | bc -l)
printf "%s %s %s = %s\n\n" "$n1" "$op" "$n2" "$ans"
exit 0
これは私がこれまでに書いたものですが、ユーザーに「等しい」を選択させる方法や、ループバックして別の操作を開始できるようにする方法を理解できません。ここで自分のコードに何ができるか考えてみてください。私はこれに一日中立ち往生しています。
- ユーザーが自分で方程式を入力するのは望ましくありません。リストから選択してもらいたいのです。