标题:急!请大家帮忙这道算法题!
取消只看楼主
寻帮助
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2019-4-3
 问题点数:0 回复次数:0 
急!请大家帮忙这道算法题!
总共三个问题。我用 Swift 完成了第一个。第二和第三请帮忙。您也可以用其它语言,请说明算法。


1. 整数 1 到 500, 给出每个数所有位数平方的和。 比如 (1, 1), (2, 4),(12, 5),(500, 25);
2. 找出所有这样的数:求和的这个方法 getSumOfDigits 运行多次后 (把运行结果输进去再运算),结果是 1. 比如1, 7, 10 。。。。
3. 找出 1 到 1 千万 之间这样的数, getSumOfDigits 运行 7 次以上,结果是 89.

func getSumOfDigits(n: Int) -> Int {

        let nString = String(n)
        var sum: Int = 0

        for char in nString {
            if let charInt = Int(String(char)) {
                sum += charInt * charInt
            }
        }

        return sum
    }

    func questionOne() -> [(Int, Int)] {

        var output: [(Int, Int)] = []

        for i in 1...500 {
            output.append((i, getSumOfDigits(n: i)))
        }

        return output
    }

多谢啦!
搜索更多相关主题的帖子: 算法 sum 结果 Int output 
2019-04-03 02:37



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-493935-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.321782 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved