Solucionar problema

Iniciado por piratascp, 29 Septiembre 2010, 16:20 PM

0 Miembros y 1 Visitante están viendo este tema.

piratascp

Hola,
Tenia un pequeño problema y es que el siguiente código no me funciona:
#include <stdio.h>
int main()
{
int a, i;
printf("Introdueix un número al qual s'aplicarà la conjetura de Collatz:\n");
scanf("%d", &a);
while (a=!0)
{
       for(i=0; a=!1; i++)
       {
           if(a/2==0)
               a=a/2;
           else
           a=a*3 + 1;
       }
   printf("Es necesiten %d passos.\n", i);
   printf("Introdueix un número al qual s'aplicarà la conjetura de Collatz:\n");
   scanf("%d", &a);
}
}

Si alguien me pudiera ayudar estaria muy agradecido.

xassiz~

El operador "=!" no existe, existe "!=".

Y para deducir si un número es par o no, debes utilizar "%" y no "/".


Prueba este:
#include <stdio.h>

int main()
{
    int a, i;
    printf("Introdueix un número al qual s'aplicarà la conjetura de Collatz:\n");
    scanf("%d", &a);
    while (a!=0)
    {
        for(i=0; a!=1; i++)
        {
            if((a%2)==0)
                a=a/2;
            else
                a=a*3 + 1;
        }
        printf("Es necesiten %d passos.\n", i);
        printf("Introdueix un número al qual s'aplicarà la conjetura de Collatz:\n");
        scanf("%d", &a);
    }
}


Saludos.

piratascp

Muchas gracias, ahora ya me funciona correctament.