SHELL脚本生成一个 100 以内的随机数,用户输入一个数,看输入的数比随机数大,则显示“你输入数更大”;输入的数比随机数小,则显示“你输入数更小”;输入的数比随机数一样,则显示“你输入数相等”;
时间: 2024-03-10 19:47:51 浏览: 82
好的,下面是一个简单的shell脚本实现这个功能:
```shell
#!/bin/bash
# 生成一个 100 以内的随机数
rand=$(($RANDOM % 100))
echo "请输入一个数:"
read num
if [ $num -gt $rand ]; then
echo "你输入的数更大"
elif [ $num -lt $rand ]; then
echo "你输入的数更小"
else
echo "你输入的数相等"
fi
```
上面的脚本首先使用内置变量 `$RANDOM` 生成一个 0~32767 之间的随机数,然后对其取模得到一个 0~99 之间的随机数。接着让用户输入一个数,使用 `read` 命令读取用户输入的值,并与随机数进行比较,输出相应的提示信息。
请注意,上面的脚本中使用了 if-elif-else 语句来判断用户输入的数与随机数的关系。在 if-elif-else 语句中,`-gt` 表示大于,`-lt` 表示小于,`-eq` 表示等于。
相关问题
shell 脚本生成一个 100 以内的随机数,用户输入一个数,看输入的数比随机数大,则显示“你输入数更大”;输入的数比随机数小,则显示“你输入数更小”;输入的数比随机数一样,则显示“你输入数相等”;
好的,这是一个简单的 Shell 脚本实现:
```bash
#!/bin/bash
# 生成随机数
random_num=$(shuf -i 1-100 -n 1)
# 让用户输入一个数
echo "请输入一个 1-100 之间的整数:"
read user_num
# 判断用户输入与随机数的大小关系
if [ $user_num -gt $random_num ]; then
echo "你输入的数更大"
elif [ $user_num -lt $random_num ]; then
echo "你输入的数更小"
else
echo "你输入的数相等"
fi
```
当你运行这个脚本后,它会生成一个 1-100 之间的随机数,并让你输入一个数。根据你输入的数与随机数的大小关系,脚本会输出相应的提示信息。
其中,`shuf -i 1-100 -n 1` 用于生成一个 1-100 之间的随机数,`read user_num` 用于让用户输入一个数,`$user_num` 和 `$random_num` 分别代表用户输入的数和随机数。`if-elif-else` 结构用于判断用户输入与随机数的大小关系,并输出相应的提示信息。
脚本生成一个 100 以内的随机数,用户输入一个数,看输入的数比随机数大,则显示“你输入数更大”;输入的数比随机数小,则显示“你输入数更小”;输入的数比随机数一样,则显示“你输入数相等”;
您可以使用以下 Shell 脚本来实现该功能:
```bash
#!/bin/bash
# 生成一个 100 以内的随机数
random_num=$[RANDOM%100+1]
# 循环读取用户输入的数,并进行比较
while true
do
# 读取用户输入的数
read -p "请输入一个 1-100 的数字:" input_num
# 判断用户输入的数是否合法
if ! echo "$input_num"|grep -q "^[1-9][0-9]*$"; then
echo "输入的不是数字,请重新输入!"
continue
fi
# 比较用户输入的数和随机数的大小
if [ $input_num -gt $random_num ]; then
echo "你输入的数更大"
elif [ $input_num -lt $random_num ]; then
echo "你输入的数更小"
else
echo "你输入的数相等"
break
fi
done
```
该脚本首先使用内置的 `$RANDOM` 变量生成一个 1-100 之间的随机数,然后使用一个 `while` 循环读取用户输入的数,并与随机数进行比较,根据比较结果输出不同的提示信息,如果用户输入的数与随机数相等,则退出循环。
阅读全文