4.Linux模仿教材p140页例3-17,编写一个脚本count.sh,计算1~60的和,结果放入total变量并打印输出,试用for循环与while循环
1个回答
关注
展开全部
方法1: 使用for循环#!/bin/bash# count.sh - 使用for循环计算1~60的和total=0for i in {1..60}; do total=$((total + i))doneecho "The sum of 1 to 60 is: $total"方法2: 使用while循环#!/bin/bash# count.sh - 使用while循环计算1~60的和total=0i=1while [ $i -le 60 ]; do total=$((total + i)) i=$((i + 1))doneecho "The sum of 1 to 60 is: $total"
咨询记录 · 回答于2023-06-24
4.Linux模仿教材p140页例3-17,编写一个脚本count.sh,计算1~60的和,结果放入total变量并打印输出,试用for循环与while循环
方法1: 使用for循环#!/bin/bash# count.sh - 使用for循环计算1~60的和total=0for i in {1..60}; do total=$((total + i))doneecho "The sum of 1 to 60 is: $total"方法2: 使用while循环#!/bin/bash# count.sh - 使用while循环计算1~60的和total=0i=1while [ $i -le 60 ]; do total=$((total + i)) i=$((i + 1))doneecho "The sum of 1 to 60 is: $total"
使用方法: 将上述代码分别保存为count_for.sh和count_while.sh,然后在命令行中运行:$ chmod +x count_for.sh$ ./count_for.shThe sum of 1 to 60 is: 1830$ chmod +x count_while.sh$ ./count_while.shThe sum of 1 to 60 is: 1830
方法1: 使用for循环#!/bin/bash# demo5.sh - 使用for循环输出-1000以内可以被9整除的数for i in {-1000..0}; do if [ $((i % 9)) -eq 0 ]; then echo $i fidone方法2: 使用while循环#!/bin/bash# demo5.sh - 使用while循环输出-1000以内可以被9整除的数i=-1000while [ $i -le 0 ]; do if [ $((i % 9)) -eq 0 ]; then echo $i fi i=$((i + 1))done
使用方法: 将上述代码分别保存为demo5_for.sh和demo5_while.sh,然后在命令行中运行:$ chmod +x demo5_for.sh$ ./demo5_for.sh-1000-991...-18-90$ chmod +x demo5_while.sh$ ./demo5_while.sh-1000-991...-18-90
看起来你在运行demo5.sh时遇到了语法错误。这可能是因为在复制脚本时引入了一些意外的字符。请确保在脚本文件中没有多余的空格或隐藏字符。这里是一个检查过的for循环版本的脚本,应该可以正常工作:#!/bin/bash# demo5.sh - 使用for循环输出-1000以内可以被9整除的数for i in {-1000..0}do if [ $((i % 9)) -eq 0 ] then echo $i fidone同样地,这里是一个检查过的while循环版本的脚本,应该可以正常工作:#!/bin/bash# demo5.sh - 使用while循环输出-1000以内可以被9整除的数i=-1000while [ $i -le 0 ]do if [ $((i % 9)) -eq 0 ] then echo $i fi i=$((i + 1))done请尝试使用这两个修复后的脚本,并
请尝试使用这两个修复后的脚本,并确保在运行之前设置正确的执行权限:$ chmod +x demo5_for.sh$ ./demo5_for.sh$ chmod +x demo5_while.sh$ ./demo5_while.sh
已赞过
评论
收起
你对这个回答的评价是?