首页 > 软件 > 编写shell脚本程序:让用户输入一个数字,程序可以由 1+2+3... 一直累加到用户输入的数

编写shell脚本程序:让用户输入一个数字,程序可以由 1+2+3... 一直累加到用户输入的数

软件 2023-06-15

shell 输入一个数字,累加怎么写

#!/bin/bash
Sum=0
while[0]
do
read-p"请输入想要叠加的数字(输入exit退出程序):"ADD
if[["${ADD}"=~^[1-9]+$]];then
letSum+=${ADD}
echo"累加的和为:",${Sum}
elif[${ADD}=="exit"];then
exit
else
echo""输入有误,请重新输入...
fi
done

结果验证

请输入想要叠加的数字(输入exit退出程序):sdfsd
输入有误,请重新输入...
请输入想要叠加的数字(输入exit退出程序):32123
累加的和为:,32123
请输入想要叠加的数字(输入exit退出程序):234
累加的和为:,32357
请输入想要叠加的数字(输入exit退出程序):sdf
输入有误,请重新输入...
请输入想要叠加的数字(输入exit退出程序):123
累加的和为:,32480
请输入想要叠加的数字(输入exit退出程序):exit

编写一个shell脚本程序.功能是输入一个数字,给出系统中以该数字为pid的进程详情,并输出到一个文件里

#!/bin/sh
#使用read命令读取用户输入的数字,赋值给变量pid
read-p"InputPID:"pid
#ps命令列出所有进程,awk打印第一行标题行及进程号为pid的进程详情,输出到文件output
psaux|awk-vn=$pid'NR==1||$2==n{print}'>output

awk命令中,NR为内部变量,表示Number of Record,行号。$2表示第二个字段(PID)。

shell程序实现1-2+3-4……-100求和

flag=1;

sum=0;

for((i=1;i<=100;i++));do

add=`baiexpr $flag * $i

sum=`expr $sum + $add`

flag=`expr 0 - $flag`

done

echo $sum

或:

#include

using namespace std;

int main()

{

baiint sum=0;

int i;

for(i=1;i<=100;i++)

dusum=sum+i;

cout<<"1+2+3+...+100="<

}

扩展资料:

本示例使用Shell函数来完成一个用户指定的应用程序。将第二个参数值设成1,可让该程序以正常大小的窗口完成,并且拥有焦点。 Dim RetValRetVal = Shell("C:\WINDOWS\CALC.EXE", 1) ' 完成Calculator。

使用shell脚本调用linux中当前时间,并记录在log文件中,10秒后再次记录时间。

date>>/tmp/data.log

sleep10

date>>/tmp/data.log

参考资料来源:百度百科-shell

Linux题目: 编写一个Shell脚本,它能够显示下面系列钱10个数字:0,1,1,2,3,4,8,13……

0,1,1,2,3,4,8,13 那个应当是5吧。 ======== #!/bin/sh a=0 b=1 echo -n $a,$b for (( i=0;i<8;i++)) do c=$((a+b)) a=$b b=$c echo -n ,$c done echo 将上面保存成fibonacci.sh。 然后在命令行输入 chmod u+x ./fibonacci.sh 最后再运行 ./fibonacci.sh 即可以得到结果: 0,1,,1,2,3,5,8,13,21,34

Linux中编写shell脚本,输出如下序列:1,3,2,4,3,5,4,6,···100 。[附图]

脚本至少有如下错误:

  1. {j}改为${j}或$j,是要取值的啊

  2. expr语句外面是反引号(键盘上ESC下面那个键)而不是单引号,表示执行命令而不是单纯一个字符串,expr后面的运算符左右两侧要有空格。

  3. if跟[之间是要有空格的,if判断表达式比较符两侧也要有空格,数字跟 [ ]之间要有空格。


我修正了,自己运行成功生成你要的数列了。你自己对比下吧:

#!/bin/bash
#scriptnameprg8.sh
clear
i=1
for((j=1;j<=98;j++))
do
echo-n"$j,`expr$j+2`,"
if[$i-eq10]
then
echo""
i=1
else
i=$((i+1))
fi
done
echo""

注释里已经说了,scriptnameprg8.sh,脚本名叫prg8.sh,当然,叫什么名字是你的自由。


标签:信息技术 shell 编程 编程语言 操作系统

大明白知识网 Copyright © 2020-2022 www.wangpan131.com. Some Rights Reserved. 京ICP备11019930号-18