首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按顺序打印3位数字的数字

按顺序打印3位数字的数字
EN

Stack Overflow用户
提问于 2015-10-02 22:50:04
回答 5查看 3.2K关注 0票数 0

我目前正在尝试创建一个程序,它从用户那里请求一个3位数字,并按顺序打印出该数字的各个数字,例如:

代码语言:javascript
复制
"Input 3 digits: 123"
1
2
3

我不允许使用任何形式的字符串,只能使用数学运算。

此外,我已经得到了第二位和第三位的公式,但我终生得不到第一位,当我运行程序时,第一位和第二位返回一个十进制数,我不确定如何避免。

我的代码:

代码语言:javascript
复制
n = eval(input('Enter a 3-digit number: '))
c = n % 10
b = n - c
b = b / 10
b = b % 10
a = n / b
a = a % 10
print(a)
print(b)
print(c)
EN

回答 5

Stack Overflow用户

发布于 2015-10-02 22:56:07

有一种更简单的方法,不需要任何数学运算。在Python语言中,字符串是可迭代的,input()返回一个字符串。所以你可以这样做:

代码语言:javascript
复制
n = input('enter a number: ')
for x in n:
    print(x)
票数 2
EN

Stack Overflow用户

发布于 2015-10-02 22:56:05

在对int的调用中,将数字除以100

输入3位数字: 435

firstDigit = int(n / 100)

firstDigit将为4

票数 1
EN

Stack Overflow用户

发布于 2015-10-02 23:03:27

您以字符串的形式获取输入,因此,使用您的示例,您将获得'123‘。如果你没有义务使用公式,你可以得到每个数字,如下所示:

代码语言:javascript
复制
user_input = input('Enter a 3-digit number: ')
first_digit, second_digit, third_digit = [int(digit) for digit in user_input]
print first_digit
print second_digit
print third_digit 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32909913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档