Afficher les nombre d'une suite
natier
-
natier -
natier -
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
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
1 réponse
-
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 !-
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] + "");
}
} -
-
-
-
-