我输入一个整数,怎么判断它到底有几位数呢?
我随便输入一个整数,怎么判断它有几位数 这算是数学题了吧,我的想法是:循环除10.话不多说,代码给你def get_bit(num):
temp = num
count = 1
result =temp / 10
while result >= 1.0:
temp = temp / 10
result = temp / 10
count += 1
return count
if __name__ == '__main__':
num = int(input('请输入整数:'))
print("整数是"+str(get_bit(num))+"位数")
print(len(str(int(input().strip()))))
虽然画蛇添足,但应该可以表达我的意思 我只给你说下思想 :
1.如果你的输入方式是字符串类型的话,直接判断从左至右第一个非"0"字符在哪里,获得从"0"字符开始到整个字符串结束的长度就可以得到输入的整数长度
2.输入方式是整数的话可以通过将整数转化为字符串,再进行如上操作.这些方法在javaSE APIString类中已经包装好了,基本不用你来写.
3.可以通过 减倍的方式,即除以10,直到结果为小数且整数位的值为0后停止,记录除10 的次数.
还有其他等........ fuwaandhuluwa 发表于 2018-5-22 15:05
这算是数学题了吧,我的想法是:循环除10.话不多说,代码给你
{:5_106:} 这个太简单了,一句话搞定
假设你的语句中有a = input()这种语句,
直接len(a)就得到整数的长度来啊 fuwaandhuluwa 发表于 2018-5-22 15:05
这算是数学题了吧,我的想法是:循环除10.话不多说,代码给你
好像人家问的是JAVA 本帖最后由 ABC23 于 2018-5-23 18:33 编辑
给你个简单的。
temp = str.toString();// 把原始数字转换为字符串
int len = temp.length(); // 得到字符串的长度,与原始数字长度等价
或者就像前面讲的,用数学方法。
页:
[1]