Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/11/2007, 16:58
Avatar de juantux
juantux
 
Fecha de Ingreso: marzo-2005
Mensajes: 59
Antigüedad: 19 años, 8 meses
Puntos: 1
Algoritmo sin entender...

Haber si ustedes me pueden ayudar.

Tenemos este problema:

Un número tiene dígitos en aumento, si cada dígito es mayor o igual que el dígito que está a su izquierda, por ejemplo 45579. Hay exactamente 219 números con dígitos en aumento entre 1 y 999. ¿Cuantos números con dígitos en aumento hay entre 1 y 999.999?.

Hice este pequeño programa en C#:

Código:
static void Main(string[] args)
{
            int i, j, contador=0, digder=0, digizq=0, sw=0;
            int final = 999;
            string aux;
            for (i = 1; i <= final; i++)
            {
                aux = Convert.ToString(i);
                if (aux.Length > 1)
                {
                    for(j=1;j<aux.Length;j++)
                    {
                        digder = Convert.ToInt32(aux.Substring(aux.Length - j, 1));
                        digizq = Convert.ToInt32(aux.Substring(aux.Length - (j+1), 1));
                        if (digder >= digizq) sw=1;
                        else sw=0;
                    }

                    if (sw == 1) contador++;
                }
            }
}
Pero el resultado que me entrega es: 495. Lo mas probables que el problema no lo entienda bien o que esté mal planteado. Haber que me dicen ustedes.

Gracias.