Hy là j'ai débuté en Java il y a 3 semaines, j'ai quelques problèmes avec ce code.Impression d'un nouveau tableau de nombres premiers à partir d'un tableau aléatoire?
dans la méthode principale j'ai un tableau contenant 10 éléments. je l'ai déjà fait plusieurs méthodes pour vous
public static void println(int[] array)
------ imprimer et tableau
public static boolean isPrime(int el)
----------- test principal. renvoie true ou false
public static int countPrimes(int[] array)
--- renvoie le nombre de nombres premiers dans le tableau.
c'est le tableau
int[] array = new int{7,5,7,2,11,-4,5,,10,2}
la méthode im des problèmes avec est:
public static int[] primesInArray(int[] array)
{
int n = array.length;
int[] temp = new int[countPrimes(array)];
int j = 0;
for(int i = 0; i < n; i++)
{
if(isPrime(array[i]))
{
temp[j] = array[i];
j= j +1;
}
}
return temp;
}
il retourne un tableau de 7 chiffres comme celui-ci {7,5,7,2,11,5,2}
mais que je reçois le tableau original de retour .
qu'est-ce que je fais mal.
Je ne vois pas où vous utilisez la matrice temporaire? Cette condition "array [i]% array [i] == 1" sera toujours évaluée à true. La logique semble défectueuse – rkg