记录cu上shell比赛的第5题

简介:

最近在CU上闲逛的时候,发现CU的shell比赛又开始了,http://bbs.chinaunix.net/thread-4086457-1-1.html看来下题目,发现如果用shell来解答的话,居然一个题目也搞不定啊,shell不行,用python来做第5题,还是可以搞定的吧,哈哈,下面就来看看这个题目和python的答案吧。

题目描述如下:

第五题:

给出一个多位数,算出其每位数的总和。比如 1234, 得到 10

        下面看看脚本和运行情况如何:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
[root@centos6 shellbisai] # cat 5.py
#coding=utf-8
#!/usr/bin/env python
import  sys
def  describe():
                 print    '''
此脚本作用及使用示例:
python script.py 123
脚本把123的输入数字拆开相加:
1+2+3=6
结果就是显示6
如果运行是没有参数或者参数多于1个,或者参数中有
字母或者符号,将有提示
                 '''
def  check():
         if  len (sys.argv) ! =  2  :
                 describe()
                 print  "Script will exit"
                 sys.exit()
         else :
                 num = sys.argv[ 1 ]
                 sum = 0
                 result = ''
                 if  num.isdigit():
                         num = list (num)
                         for  in  range ( 0 , len (num)):
                                 sum = sum + int (num[i])
                                 result = result + num[ 1 ]
                         print  "Your input is " ,sys.argv[ 1 ]
                         print  "Total is "  , sum
                         print  result
                 else :
                         describe()
                         sys.exit()
if  __name__  = =  "__main__" :
         check()


     

    脚本的描述相信大家都可以看懂了吧,嘿嘿,并且是用中文做的描述和提示哦,其实偶英文比较菜,懒得用英文做描述啊,见谅,运行的时候要有2个参数,如果不满足,会给出提示;不能超过2个参数,第2个参数必须是数字,如果有英文或者特殊符号也不行,够详细了吧,下面来看看运行的结果吧,必须我们最关心的是结果啊,下面给的是4中运行情况,分别是:

第一种没有给出第二个参数

第二种超过了2个参数

第三种给出了2个参数,但是参数中有字母或者符号

第四种正确模式

来看看运行的结果的截图吧:

224501317.gif

效果不错吧,前面几种都是有错误的提示,最后一次是正确的。


好了,这个题目就做到这里吧,如果有不对之处,希望各位不吝赐教。

本文转自你是路人甲还是霍元甲博客51CTO博客,原文链接http://blog.51cto.com/world77/1229531如需转载请自行联系原作者


world77

相关文章
|
18天前
|
弹性计算 Shell Perl
ecs服务器shell常用脚本练习(二)
【4月更文挑战第1天】shell代码训练(二)
102 1
|
21天前
|
Java Shell
SpringBoot启动脚本Shell
SpringBoot启动脚本Shell
16 0
|
1天前
|
运维 监控 Shell
利用Shell脚本编写局域网监控软件:实时监测主机连接情况
本文介绍了如何使用Shell脚本创建一个局域网监控工具,以实时检查主机连接状态。脚本包括扫描IP地址范围检测主机可达性及使用`netstat`监控ESTABLISHED连接。此外,还展示了如何每60秒将连接数数据自动提交到指定网站API,以便实时跟踪网络活动。这个自动化监控系统有助于提升网络安全性和故障排查效率。
8 0
|
2天前
|
Shell
Shell脚本之流程控制语句
Shell脚本之流程控制语句
|
3天前
|
JSON 运维 监控
训练shell常用脚本练习(三)
【4月更文挑战第14天】shell代码训练(三)
14 1
|
7天前
|
存储 弹性计算 Shell
ecs服务器shell常用脚本练习(十)
【4月更文挑战第11天】shell代码训练(十)
137 0
|
7天前
|
弹性计算 Shell Go
ecs服务器shell常用脚本练习(九)
【4月更文挑战第10天】shell代码训练(八)
124 0
|
11天前
|
弹性计算 Shell Linux
ecs服务器shell常用脚本练习(六)
【4月更文挑战第4天】shell代码训练(六)
108 0
|
16天前
|
弹性计算 Shell 应用服务中间件
ecs服务器shell常用脚本练习(四)
【4月更文挑战第4天】shell代码训练(四)
96 0