【问题标题】:Dividing a number into one hundredth将一个数除为百分之一
【发布时间】:2021-11-23 07:07:53
【问题描述】:
我的任务:
编写一个程序,用逗号将自然数分成百分之一(从右数)。
程序接受一个自然数作为输入。
条件:
如果数字少于三个字符,则程序显示文本 NO。
示例程序:
Initial data: 14875
Imprint: 14,875
Intial data: 148
Imprint: NO
【问题讨论】:
标签:
python
list
if-statement
numbers
【解决方案1】:
不知道百位逗号是什么意思。
所以,我正在回答这两种可能性。
num = 1487526645
num_str = str(num)
result = ''
counter = 0
for i in range(len(num_str) - 1, -1, -1):
if len(num_str) <= 3:
result = 'NO'
break
counter += 1
result = num_str[i] + result
if counter % 3 == 0:
result = ',' + result
print(result)
会给你输出1,487,526,645。
和
num = 1487526645
num_str = str(num)
result = ''
counter = 0
for i in range(len(num_str) - 1, -1, -1):
if len(num_str) <= 3:
result = 'NO'
break
counter += 1
result = num_str[i] + result
if (counter % 3 == 0 and counter <= 3) or ((counter - 3) % 2 == 0 and counter > 3):
result = ',' + result
print(result)
会给你输出1,48,75,26,645。
P.S.- 正如其他人会提到的,在向其他人寻求解决方案之前展示您的工作是一种很好的做法。它显示了您的努力,每个人都赞赏并鼓励您帮助您。
【解决方案2】:
f"{numb:,}" 将在 python3 中为您执行此操作。无需编写自己的函数/类。