Autor Tema: La conjetura de Collatz en Dev c++

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

10 Julio, 2012, 06:59 am
Leído 9040 veces

Hum-Sah

  • $$\Large \color{#5372a0}\pi\,\pi$$
  • Mensajes: 63
  • Karma: +0/-0
  • Sexo: Masculino
Hola!

Estoy interesado en un programa para c++ que dado un número natural pueda comprobar que la conjetura de Collatz es cierta para él mostrando todos los números que aparecen en las iteraciones y terminado la secuencia en 1 por ejemplo:

Comenzando en n = 6, uno llega a la siguiente sucesión: 6, 3, 10, 5, 16, 8, 4, 2, 1.

Sí alguien pudiese ser tan amable de mostrarme uno se lo agradecería infinitamente.

Saludos

10 Julio, 2012, 07:20 am
Respuesta #1

Gustavo

  • Moderador Global
  • Mensajes: 1,873
  • País: co
  • Karma: +0/-0
Este debería funcionar

int n;
cin>>n;
cout<<n<<endl;

while(n!=1){

if(n%2==0){
n/=2;
}else{
n=3*n+1;
}
cout<<n<<endl;
     
}