我正在尝试制作一个计算器。用户输入数字 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
这是我到目前为止所写的内容,但我无法弄清楚如何让用户选择“等于”或循环返回以输入另一个操作。有什么想法可以在这里对我的代码做些什么吗?我整天都被困在这上面。
- 我不希望用户自己输入方程式,我希望他们从列表中进行选择。