1.Définir une matrice entière (n * n)
2. Créer une méthode statique qui imprime la matrice
2.1 Créer une méthode statique qui imprime un tableau.
3. Créer un cycle qui insère les nombres de facteurs à partir d'une entrée donnée (n de 1 à 100) et imprime tous les tableaux, puis insère les éléments du tableau dans une matrice de tous les nombres factorisés.
package factortomatrix; public class FactorToMatrix { public static void main(String[] args) { //1. Définir une matrice entière (n * n) //2. Créer une méthode statique qui imprime la matrice //2.1 Créer une méthode statique qui imprime un tableau //3. Créer un cycle qui insère les nombres de facteurs à partir //d'une entrée donnée (n de 1 à 100) et imprime // tous les tableaux, puis insère les éléments du tableau // dans une matrice de tous les nombres factorisés. int a[][]= new int[4][4]; int i=1,n=100; /* i crée un cycle qui met i comme entrée à une méthode qui trouve les facteurs i commence à 1 et vais à 100 */ while(i<n) { System.out.println("n donné :"+ i); //randomMatrixCreator(a,16); //PrintMatrix(a); int factors[]= new int[i]; factors=FindFactors(i); PrintArray(factors); System.out.println("--------------"); i++; } } // i code une méthode FindFactors(int n) // qui retourne un tableau....----ici le truc---- public static int[] FindFactors(int n) { int factors=1;int len=n/2+1; int factorsArray[] = new int[len]; int i=0; while(factors<len) { if (n%factors==0) // ici i trouve les facteurs { // ici nous avons un facteur factorsArray[i]=factors; i++; } factors++; } return factorsArray; } // pour tester printMatrix i crée un randomMatrixCreator public static void randomMatrixCreator(int m[][],int nMax) {// nMax est la valeur maximale que j'insère dans la matrice // de 0 à nMax for(int i=0;i<m.length;i++) { for(int j=0;j<m.length;j++) { m[i][j]=(int)(Math.random()*nMax); } } } public static void PrintMatrix(int m[][]) { for(int i=0;i<m.length;i++) { for(int j=0;j<m.length;j++) { System.out.print(m[i][j]+ " "); } System.out.println(); } } public static void PrintArray(int m[]) { for(int i=0;i<m.length;i++) System.out.print(m[i]+ " "); } } La vidéo suivante est la solution :
à partir de tableaux de facteurs, nous créons une matrice remplie de nombres diviseurs.