public class Main {
public static void main(String[] args){
//Vérifiez les valeurs minimale et maximale du type int
System.out.println("int minimum/Valeur maximum= " + Integer.MIN_VALUE+" ~ "+Integer.MAX_VALUE);
System.out.println("octet minimum/Valeur maximum= " + Byte.MIN_VALUE+" ~ "+Byte.MAX_VALUE);
System.out.println("court minimum/Valeur maximum= " + Short.MIN_VALUE+" ~ "+Short.MAX_VALUE);
System.out.println("long minimum/Valeur maximum= " + Long.MIN_VALUE+" ~ "+Long.MAX_VALUE);
}
}
int minimum/Valeur maximum= -2147483648 ~ 2147483647
octet minimum/Valeur maximum= -128 ~ 127
court minimum/Valeur maximum= -32768 ~ 32767
long minimum/Valeur maximum= -9223372036854775808 ~ 9223372036854775807
Créez un programme qui entre n × m matrice A et m × l matrice B, et en sort le produit, matrice n × l C. Ici, laissez chaque élément de A, B et C être respectivement aij, bij et cij. Input N, m, l sont indiqués sur la première ligne, séparés par des blancs. Les lignes suivantes reçoivent la matrice n × m A et la matrice m × l B. Output Sortez l'élément C cij de la matrice n × l. Séparez les éléments adjacents sur chaque ligne avec un seul espace. Constraints
//Calcul du produit intérieur
import java.util.Scanner;
import java.util.Arrays;
public class Main {
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
int n=scan.nextInt();
int m=scan.nextInt();
int l=scan.nextInt();
//0≤aij,≤ bij 10000
//Notez qu'il peut ne pas entrer dans la plage maximale du type int 2147483647!
// int[][] a=new int[n][m];
// int[][] b=new int[m][l];
// int[][] c=new int[n][l];
long[][] a = new long[n][m];
long[][] b = new long[m][l];
long[][] c = new long[n][l];
//Matrice A
for(int i=0;i<n;i++)for(int j=0;j<m;j++){
a[i][j]=scan.nextInt();
}
//Matrice B
for(int i=0;i<m;i++)for(int j=0;j<l;j++){
b[i][j]=scan.nextInt();
}
//Produit matriciel c=a*b
for(int i=0;i<n;i++){
for(int j=0;j<l;j++){
for(int k=0;k<m;k++){
c[i][j]+=a[i][k]*b[k][j];
}
}
}
// System.out.println(Arrays.deepToString(c));
StringBuilder sb = new StringBuilder();
for(int i=0;i<n;i++){
for(int j=0;j<l;j++){
sb.append(c[i][j]);
if(j != l-1) sb.append(" ");
}
if(i != n-1) sb.append("\n");
}
System.out.println(sb);
scan.close();
}
}
Recommended Posts