首页 > 华为机试题其实不难,就看怎么发挥了
头像
牛客425255198号
编辑于 2020-05-04 11:46
+ 关注

华为机试题其实不难,就看怎么发挥了

题目:输入一个数,使各个位置相加,直到输出一位数。
示例:输入48,输出 3  (4+8=12,1+2=3)
考试过程一紧张卡在第一步了,没算出来,虽然知道后面该怎么判断,只怪自己学艺不精。
这里附上蹩脚的代码:

s=input() 
b=0
if int(s)<10:
    print(s)
else:
    for i in s:
        b += int(i)
        s = str(b)
    if int(s)<10:
        print(s)
    else:
        b=0
        for i in s:
            b += int(i)
            s = str(b)
        if int(s) < 10:
            print(s)
        else:
            b=0
            for i in s:
                b += int(i)
                s = str(b)
            if int(s) < 10:
                print(s)
这样可以实现功能。但还有更简单的解法:用while循环嵌套for语句就可以搞定,那样的代码会更简单。
以上仅供参考,希望大家学习过程注意细节,希望大家都能通过考试,最后也祝我能如愿吧



全部评论

(3) 回帖
加载中...
话题 回帖

近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐