0

使用Luhn 算法时,我们需要确定一个数字是否大于 10,以便决定是否应该添加数字以继续验证过程。有谁知道如何以非函数的方式将其放入脚本中?

4

2 回答 2

1

如果您的变量是n,您可以测试它的长度${#n}是否大于 1,如果是,则将数字相加,否则只需将其传递,例如:

$ n=14; test ${#n} -gt 1 && echo $((${n:0:1} + ${n:1:1})) || echo $n
5
$ n=8; test ${#n} -gt 1 && echo $((${n:0:1} + ${n:1:1})) || echo $n
8
于 2013-09-26T00:39:19.170 回答
0

一种简单的方法:取模 9:

$ echo $(( inputnum % 9 ))

例如

$ inputnum=14; echo $(( inputnum % 9 ))
5

$ inputnum=8; echo $(( inputnum % 9 ))
8
于 2013-09-27T08:38:30.983 回答