shell脚本 使用until 计算100以内所有的奇数之和,和100以内所有的偶数之和
时间: 2023-09-23 22:03:40 浏览: 311
好的,下面是使用 `until` 循环实现计算100以内所有奇数之和和偶数之和的脚本:
```bash
#!/bin/bash
odd_sum=0
even_sum=0
i=1
# 计算所有奇数之和
until [ $i -gt 100 ]
do
odd_sum=$((odd_sum+i))
i=$((i+2))
done
# 重置i的值,计算所有偶数之和
i=2
until [ $i -gt 100 ]
do
even_sum=$((even_sum+i))
i=$((i+2))
done
echo "100以内所有奇数之和为:$odd_sum"
echo "100以内所有偶数之和为:$even_sum"
```
这个脚本中,我们使用了两个 `until` 循环,第一个循环计算所有奇数之和,第二个循环计算所有偶数之和。每个循环中,我们使用 `$i` 来表示当前的数,通过 `$((i+2))` 来更新 `$i` 的值,进而实现循环计算。
相关问题
shell编程 分别使用whlie循环·until循环和for循环实现计算100以内所有整数之和。100以内奇数之和,100以内偶数之和。
好的,我来为您解答这个问题。
首先是使用 `while` 循环实现计算100以内所有整数之和的脚本:
```bash
#!/bin/bash
sum=0
i=1
while [ $i -le 100 ]
do
sum=$((sum+i))
i=$((i+1))
done
echo "100以内所有整数之和为:$sum"
```
接下来是使用 `until` 循环实现计算100以内所有整数之和的脚本:
```bash
#!/bin/bash
sum=0
i=1
until [ $i -gt 100 ]
do
sum=$((sum+i))
i=$((i+1))
done
echo "100以内所有整数之和为:$sum"
```
最后是使用 `for` 循环实现计算100以内所有整数之和、奇数之和和偶数之和的脚本:
```bash
#!/bin/bash
sum=0
odd_sum=0
even_sum=0
for (( i=1; i<=100; i++ ))
do
sum=$((sum+i))
if [ $((i%2)) -eq 1 ]
then
odd_sum=$((odd_sum+i))
else
even_sum=$((even_sum+i))
fi
done
echo "100以内所有整数之和为:$sum"
echo "100以内奇数之和为:$odd_sum"
echo "100以内偶数之和为:$even_sum"
```
希望这些脚本能够帮助您。
熟悉whie, until语句,编写计算从 1 加到 100 的奇数之和
在Shell脚本中,`while`和`until`语句常用于控制循环,尤其是当需要满足某个条件才停止循环的时候。它们的基本语法如下:
- `while`循环:当指定的条件为真时,循环继续执行,直到条件变为假。
- `until`循环:与`while`相反,它会一直执行,直到条件为真。
现在我们来编写一个简单的Shell脚本来计算从1加到100的所有奇数之和:
```sh
#!/bin/bash
sum=0
i=1
# 使用 while 循环,只要 i 小于 101 (因为我们要包含101这个偶数)
# 并且它是奇数(即 i % 2 == 1),就加到 sum 中
while [ $i -lt 101 ] && [ $((i%2)) -eq 1 ]; do
sum=$((sum+i))
i=$((i+2)) # 因为奇数每次增加2
done
echo "从1加到100的奇数之和是: $sum"
```
在这个脚本中,我们初始化`sum`为0,然后`i`从1开始。`while`循环会检查是否`i`小于101并且`i`是奇数。如果是,就将`i`的值加到`sum`上,然后`i`增加2以便跳过下一个偶数。当`i`变成101或者不再是奇数时,循环结束。
阅读全文
相关推荐









