当前位置 : 主页 > 网络编程 > lua >

lua中整数的位数之和

来源:互联网 收集:自由互联 发布时间:2021-06-23
我看到了一个与 Java和C相关的问题,但我使用的是LUA.答案可能适用于我,但我不理解它们. 有人可以告诉我如何获得整数的各个数字的总和. 例如. a = 275aSum = 2+7+5 如果你能解释我将如何在
我看到了一个与 Java和C相关的问题,但我使用的是LUA.答案可能适用于我,但我不理解它们.

有人可以告诉我如何获得整数的各个数字的总和.
例如.

a = 275
aSum = 2+7+5

如果你能解释我将如何在LUA中实现这一点,以及代码为什么会这样做,那将非常感激.

真的很简单的功能.使用gmatch将为您提供所需的服务.

function sumdigits(str)
  local total = 0
  for digit in string.gmatch(str, "%d") do
  total = total + digit
  end
  return total
end

print(sumdigits(1234))

10

基本上,你循环遍历整数并逐个拉出它们以将它们添加到总数中. “%d”仅表示一位数,因此string.gmatch(str,“%d”)表示“每次匹配一位”. “for”是循环机制,因此对于字符串中的每个数字,它将添加到总数中.

网友评论