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. 逗号后留一个空格。

发布了85 篇原创文章 · 获赞 86 · 访问量 31万+

猜你喜欢

转载自blog.csdn.net/yedouble/article/details/81908153