Tengo un número, por ejemplo 1234567897865; ¿cómo lo maximizo y creo 99999999999999?Cómo obtener el número máximo de una longitud particular
lo hice de esta manera:
int len = ItemNo.ToString().Length;
String maxNumString = "";
for (int i = 0; i < len; i++)
{
maxNumString += "9";
}
long maxNumber = long.Parse(maxNumString);
lo que sería la mejor manera, y más corto adecuado para abordar esta tarea?
BigInteger tiene métodos comparables si se supera 'long'. –
Esto es incorrecto. Debido a las propiedades de la aritmética de punto flotante cuando 'x = 10^n'' log (x) 'puede ser un poco más pequeño que n. Cuando esto sucede, su función devuelve '10^n-1' en lugar de' 10^(n + 1) -1'. Por ejemplo, en la aritmética de precisión doble x = 1000 da 999 en lugar de 9999 porque 'log (1000) = 2.99999999999999955591e + 00'. –
ahhh ... ¡exigente! [pero correcto] Lo arreglé para manejar esto ... @adam, ¿por qué solo sugerir/proporcionar la solución usted mismo? –