我希望编写一个脚本,提示用户输入两个数字,分别表示矩形的宽度和高度(以厘米为单位),并输出矩形的面积(以平方米和平方英寸为单位)(一英寸 = 2.54 厘米)。
我觉得这个应该比较简单,但是我无法得出有效的结论。
答案1
#!/bin/sh
read -p "Enter the width and height of rectangle in meters: " width height
sqm=$(echo "$width * $height" | bc -l)
sqin=$(echo "$sqm * 1550" | bc -l)
echo "Area of the rectangle is: $sqm Square Meters or $sqin Square Inches."
(仅供参考,1 平方米等于 1550 平方英尺。我知道这一点是因为谷歌告诉我的。)
示例运行:
$ ./area.sh
Enter the width and height of rectangle in meters: 3.5 4.5
Area of the rectangle is: 15.75 Square Meters or 24412.50 Square Inches.
答案2
更正上面注释中的代码中的一两个拼写错误后,它应该如下所示:
#!/bin/sh
echo "Enter the width and height of rectangle:"
read width
read height
echo "Area of the rectangle is:"
expr $width \* $height
结果:
$ ./tst.sh
Enter the width and height of rectangle:
3
4
Area of the rectangle is:
12
那么,问题出在哪里呢? ;)
答案3
#!/bin/sh
read -r -p "please enter width of rectangle: " W
read -r -p "please enter height of rectangle: " H
AREA=`echo "$W $H" | awk '{area=$1*$2; print area}'`
echo "Area of the rectangle is:$AREA"
答案4
对我上面的帖子感到抱歉。我无法删除或编辑我的旧帖子,所以我刚刚发布了一篇新帖子。我意识到你想要 shell 而不是 python 的说明。以防万一,我将提供两者的说明。
壳
打开终端并输入以下内容:
touch area.sh&&chmod 700 area.sh
将此粘贴到area.sh
#!/bin/sh
echo 'Enter the width of the rectangle'
read W
echo 'Enter the length of the rectangle'
read L
echo "The area of the rectangle is $((W * L))"
Python
打开终端并输入以下内容:
touch area.py&&chmod 700 area.py
将此粘贴到area.py
#!/usr/bin/env python3
W = input('Enter the width of the rectangle: ')
L = input('Enter the length of the rectangle: ')
print(f'The area of the rectangle is {float(W)*float(L)}')
希望这可以帮助!