shell编写输入三个整数,判断是否构成三角形,等腰三角形,等边三角形和普通三角形
时间: 2024-05-11 16:16:04 浏览: 17
好的,我理解了您的要求和问题。以下是一个简单的shell脚本,可以实现您的需求:
```shell
#!/bin/bash
# 输入三个整数
read -p "请输入三个整数,用空格隔开: " a b c
# 判断是否构成三角形
if [ $((a+b)) -gt $c ] && [ $((b+c)) -gt $a ] && [ $((a+c)) -gt $b ]; then
echo "可以构成三角形"
# 判断是否为等边三角形
if [ $a -eq $b ] && [ $b -eq $c ]; then
echo "等边三角形"
# 判断是否为等腰三角形
elif [ $a -eq $b ] || [ $b -eq $c ] || [ $a -eq $c ]; then
echo "等腰三角形"
# 其他情况为普通三角形
else
echo "普通三角形"
fi
else
echo "无法构成三角形"
fi
```
您可以直接将以上脚本复制到您的shell环境中运行测试。如有问题请随时告知我。
相关问题
用shell判断三条边长是否为三角形,如果是进而判断它是等腰三角形还是等边三角形
可以使用以下的Shell脚本来判断三个值是否能够构成三角形,并且判断它是等腰三角形还是等边三角形:
```
#!/bin/bash
echo "请输入三角形的三条边长:"
read a
read b
read c
if [ $(($a+$b)) -gt $c ] && [ $(($a+$c)) -gt $b ] && [ $(($b+$c)) -gt $a ]
then
echo "可以构成三角形"
if [ $a -eq $b ] || [ $a -eq $c ] || [ $b -eq $c ]
then
if [ $a -eq $b ] && [ $b -eq $c ]
then
echo "这是一个等边三角形"
else
echo "这是一个等腰三角形"
fi
else
echo "这是一个普通三角形"
fi
else
echo "无法构成三角形"
fi
```
在运行该脚本时,会提示用户输入三角形的三条边长,然后根据三条边长是否能够构成三角形来输出相应的结果。如果可以构成三角形,则进一步判断它是等腰三角形还是等边三角形。其中,判断三条边长是否能够构成三角形的条件为:任意两边之和大于第三边。
编写一个shell脚本,使用for循环输出一个实心等腰三角形。
以下是一个使用for循环输出实心等腰三角形的shell脚本:
```bash
#!/bin/bash
read -p "请输入三角形的高度:" height
for (( i=1; i<=height; i++ ))
do
for (( j=i; j<=height-1; j++ ))
do
echo -n " " # 输出空格,用于对齐
done
for (( j=1; j<=2*i-1; j++ ))
do
echo -n "*" # 输出"*",构成实心三角形
done
echo "" # 输出换行符
done
```
使用方法:在终端中输入`bash filename.sh`(将filename替换为脚本文件名),然后按照提示输入三角形的高度即可。