题解 | #人民币转换#

人民币转换

https://www.nowcoder.com/practice/00ffd656b9604d1998e966d555005a4b

def f(n):

    if n<20:

        s = lis[n]

    elif n<100:

        if n%10>=1:

            s = f(n//10) + '' + f(n%10)

        else:

            s = f(n//10) + ''

    elif n<1000:

        if n%100>=10:

            s = f(n//100) + '' + f(n%100)

        elif n%100>0:

            s = f(n//100) + '佰零' + f(n%100)

        else:

            s = f(n//100) + ''

    elif n<10000:

        if n%1000>=100:

            s = f(n//1000) + '' + f(n%1000)

        elif n%1000>0:

            s = f(n//1000) + '仟零' + f(n%1000)

        else:

            s = f(n//1000) + ''

    elif n<100000000:

        if n%10000>=1000:

            s = f(n//10000) + '' + f(n%10000)

        elif n%10000>0:

            s = f(n//10000) + '万零' + f(n%10000)

        else:

            s = f(n//10000) + ''

    else:

        if n%100000000>=10000000:

            s = f(n//100000000) + '亿' + f(n%100000000)

        elif n%100000000>0:

            s = f(n//100000000) + '亿零' + f(n%100000000)

        else:

            s = f(n//100000000) + '亿'

    return s

lis = ['','','','','','','','','','','','拾壹','拾贰','拾叁','拾肆','拾伍','拾陆','拾柒','拾捌','拾玖']

a,= map(int,input().split('.'))

if a>0:

    s = '人民币' + f(a) + ''

else:

    s = '人民币'

if b==0:

    s += ''

elif b<10:

    s += lis[b] + ''

elif b%10==0:

    s += lis[b//10] + ''

else:

    s += lis[b//10] + '' + lis[b%10] + ''

print(s)

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务