Создать скрипт, вычисляющий сумму двух чисел, если первое из них больше второго, и произведение в обратном случае. В командную строку выводится результат арифметической операции.
Есть два варианта скрипта и ни один не работает в линуксе на виртуальной машине (можно сделать в онлайн компиляторе на bash) (1) echo Введите два числа read a read b read C if [ "$a" -gt "$b"] then let C=a+b echo $C else let C=a*b echo $C fi ---------------------------------- (2) echo Введите два числа read a read b if [ $a > $b ] then G=$(echo "$a+$b" | bc) fi if [ $a < $b ] then G=$(echo "$a*$b" | bc) echo $G fi
echo "Input two numbers:" read a ; read b res=0 if [ "$a" -gt "$b" ] then res=$(($a + $b)) fi if [ "$a" -le "$b" ] then res=$(($a * $b)) fi echo "Result is: $res"
В первом не хватает пробела перед закрывающей квадратной скобкой. И лишний ввод переменной C. Чтобы работал второй, надо:
на машину установить программу bc квадратные скобки [ ] заменить на двойные квадратный скобки [[ ]] вывод $G вынести за условный оператор (или сделать вывод в обеих ветвях)
Есть два варианта скрипта и ни один не работает в линуксе на виртуальной машине (можно сделать в онлайн компиляторе на bash)
(1)
echo Введите два числа
read a
read b
read C
if [ "$a" -gt "$b"]
then let C=a+b
echo $C
else let C=a*b
echo $C
fi
----------------------------------
(2)
echo Введите два числа
read a
read b
if [ $a > $b ]
then G=$(echo "$a+$b" | bc)
fi
if [ $a < $b ]
then G=$(echo "$a*$b" | bc)
echo $G
fi