Python入门100道习题(3)——五位数数位

题目描述

【问题描述】
输入一个五位数,左对齐依次输出其数位,中间用3个空格间隔。如输入12345,则输出:
1 2 3 4 5

输出以上内容的python语句是
print (1,” “,2,” “,3,” “,”4,” “,5)

说明:1之后的逗号,会产生一个空格,加上指定输出的空格和2之前的逗号产生的空格,一共隔了3个空格。

【输入形式】
输入一个5位的整数
【输出形式】
输出各数位,数位之间间隔3个空格。
【样例输入】
12345
【样例输出】
1  2  3  4  5

知识点

  1. 输入整数
  2. 类型转换
  3. 整除、求余运算
  4. 打印输出

参考答案

解法1:

wws = int(input())
w1 = wws // 10000
w2 = (wws - w1 * 10000) // 1000
w3 = (wws - w1 * 10000 - w2 * 1000) // 100
w4 = (wws - w1 * 10000 - w2 * 1000 - w3 * 100 ) // 10
w5 = wws % 10
print(w1, " ", w2, " ", w3, " ", w4, " ", w5)

上述解法中,//是整除运算符。%是求余运算符。注意,//不能写作/。后者是浮点数除法,运算结果是浮点数。

解法2

wws = int(input())
w5 = wws % 10    #最低位
ws4 = wws // 10  #高4位
w4 = ws4 % 10    #倒数第2位
ws3 = ws4 // 10  #高3位
w3 = ws3 % 10
ws2 = ws3 // 10  #高2位
w2 = ws2 % 10
ws1 = ws2 // 10  #高1位
w1 = ws1

print(w1, " ", w2, " ", w3, " ", w4, " ", w5)

解法2利用不断整除10,依次求出最高4位数,最高3位数、最高2位数和最高1位数,然后对10求余,即得到各个数位。
如果用while循环的话,代码可以明显缩短。我们后面会讲while循环。

代码格式

好的代码格式帮助人们(包括写作者自己)阅读代码,减少犯错几率。
强烈建议安装以下规则来书写代码。
1. 运算符、赋值号(=)两边各留一个空格。
2. 逗号后留一个空格。

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值