由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 求助:求整数的位数,咋就不对了呢?
相关主题
为什么这个阶乘函数算到37就溢出了?one C++ question
弱弱的问一个问题C++ object size一问
多重嵌套循环会不会导致栈溢出? (转载)One C++ question
binary search里面你们是用 < 还是<=one C++ question
amazon的那道题目发个题目给大家复习一下marco
Interview questions, BloombergWhy I can't compile this function successfully
一个容易记忆的permutation算法C++: what is the output? How to interpret it?
好记(但不是最优)的combination算法C++ Q42: (C22)
相关话题的讨论汇总
话题: int话题: digits话题: 位数话题: 整数话题: 2323
进入JobHunting版参与讨论
1 (共1页)
r******j
发帖数: 92
1
int x = 2323;
int digits = 1;
while(x/(int)Math.pow(10,digits)>=1){
digits++;
}
想用这个方法求整数的位数。为什么这循环一直也结束不了呢。
x也是int,后面也强制转化成int了,结果应该是int吧,怎么就循环结束不了了呢。。。
很弱的问题。。。求指教。。。
c*****a
发帖数: 808
2
(int) Math.ceil(Math.log10(2323))?
p****e
发帖数: 3548
3
我这里运行没问题
int x = 111112323;
int digits = 1;
while(x/(int)pow(10,digits)>=1){
digits++;
}
cout << digits << endl;
Output: 9
r******j
发帖数: 92
4
我也觉得很神奇。。。因为我记得我昨天的一道题用的同样的方法,可以的。。今天怎
么就不行了。。。。。。。。。

【在 p****e 的大作中提到】
: 我这里运行没问题
: int x = 111112323;
: int digits = 1;
: while(x/(int)pow(10,digits)>=1){
: digits++;
: }
: cout << digits << endl;
: Output: 9

p*****p
发帖数: 379
5
>=1可能会溢出
c********t
发帖数: 5706
6
为什么?

【在 p*****p 的大作中提到】
: >=1可能会溢出
r******j
发帖数: 92
7
我的方法用来数2147483647的位数就不可以,2147483646就可以。哪位知道为什么吗?
l*******b
发帖数: 2586
8
overflow鸟...

【在 r******j 的大作中提到】
: 我的方法用来数2147483647的位数就不可以,2147483646就可以。哪位知道为什么吗?
r******j
发帖数: 92
9
可是2147483647不是java中int可以表示的最大的整数吗?没有overflow吧?

【在 l*******b 的大作中提到】
: overflow鸟...
1 (共1页)
进入JobHunting版参与讨论
相关主题
C++ Q42: (C22)amazon的那道题目
问个c++题Interview questions, Bloomberg
C++问题一个容易记忆的permutation算法
弱问个C++ 问题 (const_cast)好记(但不是最优)的combination算法
为什么这个阶乘函数算到37就溢出了?one C++ question
弱弱的问一个问题C++ object size一问
多重嵌套循环会不会导致栈溢出? (转载)One C++ question
binary search里面你们是用 < 还是<=one C++ question
相关话题的讨论汇总
话题: int话题: digits话题: 位数话题: 整数话题: 2323