-1

我正在寻找一个关于当整数达到其数字的最大数时停止的条件的想法。

IE

2位数字的最大数量是99

5位数字的最大数量是99999

我得到了这个

while(x != ([10^number of digits] -1))
{
    x++;
}
cout << x;

但实际上我正在处理字符串,这可能我有一个巨大的数字,并且这段代码在 9 位数字之后开始变得很长的执行时间。

有谁能给我一个好主意,谢谢。

4

2 回答 2

2

使用起来会快一些

x = ([10^number of digits] -1);

代替

while(x != ([10^number of digits] -1))
{
    x++;
}
于 2013-01-20T09:40:03.767 回答
1

怎么样:

done = false;
while(!done)
{
    x++;
    done = true;
    for (i=0 ; i<number_of_digits; i++)
       if x[i] != '9'
          done = false;
}
cout << x;
于 2013-01-20T09:41:44.793 回答