编写shell脚本实现while循环计算1到一百奇数的累加和
时间: 2024-03-17 11:40:23 浏览: 252
好的,以下是一个实现此功能的shell脚本示例:
```bash
#!/bin/bash
sum=0 # 初始化累加和为0
i=1 # 初始化计数变量为1
while [ $i -le 100 ] # 当计数变量小于等于100时进行循环
do
if [ $((i % 2)) -eq 1 ] # 如果计数变量是奇数
then
sum=$((sum + i)) # 将计数变量的值加到累加和中
fi
i=$((i + 1)) # 计数变量自增1
done
echo "The sum of odd numbers from 1 to 100 is: $sum" # 输出累加和
```
这个脚本中使用了一个 `while` 循环来计算从1到100的所有奇数的累加和。在循环中,首先判断当前的计数变量是否为奇数,如果是,则将其加到累加和中。最后输出累加和的值。
你可以将这个脚本保存在一个文件中,例如 `sum_odd_numbers.sh`,并在终端中运行它:
```bash
$ bash sum_odd_numbers.sh
The sum of odd numbers from 1 to 100 is: 2500
```
这里的累加和应该是1到100中所有奇数的和,即2500。
相关问题
Linux怎样在shell目录创建文件while.sh编写shell脚本实现while循环计算一到一百奇数的累加和
可以使用以下命令在shell目录中创建while.sh文件:
```
cd /path/to/shell
touch while.sh
```
然后使用vi或其他编辑器打开while.sh,编写如下代码:
```bash
#!/bin/bash
sum=0
i=1
while [ $i -le 100 ]
do
if [ $(($i % 2)) -eq 1 ]; then
sum=$(($sum + $i))
fi
i=$(($i + 1))
done
echo "奇数的累加和为:$sum"
```
保存并退出编辑器,然后使用以下命令给while.sh添加执行权限:
```
chmod +x while.sh
```
最后,执行while.sh脚本即可:
```
./while.sh
```
输出结果为:
```
奇数的累加和为:2500
```
shell脚本 输出1到100的偶数和奇数
shell脚本可以利用循环结构如for或while,并结合条件判断,来分别输出1到100之间的偶数和奇数。下面是一个简单的例子:
对于输出偶数:
```bash
#!/bin/bash
sum_even=0
for i in {1..100}
do
if [ $(expr $i % 2) -eq 0 ]
then
echo "偶数: $i"
sum_even=$(($sum_even + $i))
fi
done
echo "偶数之和: $sum_even"
```
对于输出奇数:
```bash
#!/bin/bash
sum_odd=0
for i in {1..100}
do
if [ $(expr $i % 2) -ne 0 ]
then
echo "奇数: $i"
sum_odd=$(($sum_odd + $i))
fi
done
echo "奇数之和: $sum_odd"
```
上述脚本首先初始化两个变量`sum_even`和`sum_odd`用于累加偶数和奇数,然后遍历1到100的数字,如果数字能被2整除(余数为0),则是偶数;反之,则是奇数。每遇到符合条件的数,就打印并更新相应的和。
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![docx](https://img-home.csdnimg.cn/images/20241231044901.png)
![-](https://img-home.csdnimg.cn/images/20241231044833.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)