Afficher les nombre d'une suite

Utilisateur anonyme -  
 Utilisateur anonyme -
Bonjour,

J'ai fait un programme qui affiche les nombres de la suite tant que le résultat est différent de 1.
Si le nombre est pair, on fait nombre / 2
Si le nombre est impair, on fait 3 * nombre + 1
Pouvez vous m'aidez à corriger mes erreurs

import java.util.Scanner;
public class TP10_Suites {
public static void main(String[] args) {

int nombre, reste;
nombre = 0;
int [] mylist= new int[nombre];

System.out.println("Veuillez saisir un nombre");
nombre = (new Scanner(System.in)).nextInt();
while (nombre !=1)
{
reste = nombre / 2;
if (reste == 0)
{
nombre = nombre / 2;
}
else
{
nombre = 3 * nombre + 1;
}
mylist[nombre] = mylist[nombre + 1];
}
System.out.println("Les nombres de la suite sont : " + mylist[nombre] + "");
}
}

Merci de votre aide

A voir également:

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
reste = nombre / 2; 
Ce n'est pas comme ça que l'on test si c'est un nombre pair ou pas, il faut utiliser l'opérateur % à la place du /

int [] mylist= new int[nombre];
Attention : au moment où tu fais ça, nombre==0, il vaudrait mieux faire ça après avoir lu la valeur de nombre. Mais je ne vois pas l'intérêt d'un tel tableau !
0
Utilisateur anonyme
 
J'ai modifier un peut le code mais toujours une erreur pour l'affichage

import java.util.Scanner;
public class TP10_Suites {
public static void main(String[] args) {

int nombre, reste;
nombre = 0;
int [] mylist= new int[nombre];

System.out.println("Veuillez saisir un nombre");
nombre = (new Scanner(System.in)).nextInt();
while (nombre !=1)
{
reste = nombre % 2;
if (reste == 0)
{
nombre = nombre / 2;
}
else
{
nombre = 3 * nombre + 1;
}
mylist[nombre] = mylist[nombre + 1];
}
System.out.println("Les nombres de la suite sont : " + mylist[nombre] + "");
}
}
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
int [] mylist= new int[nombre];
Attention : au moment où tu fais ça, nombre==0, il vaudrait mieux faire ça après avoir lu la valeur de nombre. Mais je ne vois pas l'intérêt d'un tel tableau !"
0
Utilisateur anonyme
 
d'accord, mais j'arrive toujours pas a voir ce qu'il bloc, on me dit que c'est à la dernière ligne
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Ce qui bloque c'est que ton tableau n'a pas de case vu que nombre=0 lorsque tu créés le tableau !
0
Utilisateur anonyme
 
je doit mettre quoi alors
0