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.
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.
Muchas gracias, ahora ya me funciona correctament.