一个整数有多少位数字之和,你能一问到底吗?
- 内容介绍
- 文章标签
- 相关推荐
本文共计322个文字,预计阅读时间需要2分钟。
我看到了一个与Java和C相关的问题,虽然我使用的语言是LUA,但这个解决方案可能适用于我。不过,我不太理解它。有人能告诉我如何获取所有数字的总和吗?例如,a=275,那么aSum=2 + 7 + 5。如果你能解释一下如何实现这个功能,我将非常感激。
我看到了一个与 Java和C相关的问题,但我使用的是LUA.答案可能适用于我,但我不理解它们.有人可以告诉我如何获得整数的各个数字的总和.
例如.
a = 275 aSum = 2+7+5
如果你能解释我将如何在LUA中实现这一点,以及代码为什么会这样做,那将非常感激.
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”是循环机制,因此对于字符串中的每个数字,它将添加到总数中.
本文共计322个文字,预计阅读时间需要2分钟。
我看到了一个与Java和C相关的问题,虽然我使用的语言是LUA,但这个解决方案可能适用于我。不过,我不太理解它。有人能告诉我如何获取所有数字的总和吗?例如,a=275,那么aSum=2 + 7 + 5。如果你能解释一下如何实现这个功能,我将非常感激。
我看到了一个与 Java和C相关的问题,但我使用的是LUA.答案可能适用于我,但我不理解它们.有人可以告诉我如何获得整数的各个数字的总和.
例如.
a = 275 aSum = 2+7+5
如果你能解释我将如何在LUA中实现这一点,以及代码为什么会这样做,那将非常感激.
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”是循环机制,因此对于字符串中的每个数字,它将添加到总数中.

