Voilà je viens de le terminer.
Tout correspond à l'énoncer. SAUF, il me manque la limitation à 2 décimales.. Un connerie mais je vois pas où le mettre.
Voila mon code. Je n'ai pas mis de commentaire désolé.
Main.java
Lib.java
Tout correspond à l'énoncer. SAUF, il me manque la limitation à 2 décimales.. Un connerie mais je vois pas où le mettre.
Voila mon code. Je n'ai pas mis de commentaire désolé.
Main.java
- Code:
package exercice3;
import java.util.Arrays;
import java.util.Random;
import javax.swing.JOptionPane;
public class Main {
public static void main(String[] args)
{
int n=0,i,j;
int mat[][];
String str,m1Str,m2Str,vStr,str2;
do
{
str=JOptionPane.showInputDialog("Entrez n?");
n=Integer.parseInt(str);
}while(n>5 || n<0);
if (n!=0)
{
mat=new int[n][n+2];
for(i=0;i<n;i++)
{
for(j=0;j<(n+2);j++)
{
Random valAl= new Random();
mat[i][j]=valAl.nextInt(100);
}
}
m1Str=Lib.matToStr(mat);
Lib.permutColMat(mat);
m2Str=Lib.matToStr(mat);
float vect[]=new float[n];
vect=Lib.initVect(mat, vect);
vStr=Arrays.toString(vect);
str2="Voici la matrice\n"+m1Str+"\nVoici la matrice permutée\n"+m2Str+"\nVoici le vecteur\n"+vStr;
JOptionPane.showMessageDialog(
null,
str2
);
}
}
}
Lib.java
- Code:
package exercice3;
import java.util.Arrays;
public class Lib {
public static String matToStr(int mat[][])
{
int i;
String str;
str=Arrays.deepToString(mat);
str = str.replace("], ", "\n");
str = str.replace("[","");
str = str.replace("]","");
return str;
}
public static int[][] permutColMat(int mat[][])
{
int i,tmp;
int n=(mat.length)+1;
for(i=0;i<mat.length;i++)
{
tmp=mat[i][0];
mat[i][0]=mat[i][n];
mat[i][n]=tmp;
}
return mat;
}
public static float[] initVect(int mat[][],float vect[])
{
int i,j;
float somme=0;
for(i=0;i<mat.length;i++)
{
for(j=0;j<mat[i].length;j++)
{
somme=somme+mat[i][j];
}
vect[i]=(somme/j);
}
return vect;
}
}