السلام عليكم ..
أتمنى الإجابة " عندي اختبار عملي السبت "
import java.util.Scanner;
public class NewMatrix {
public static void main (String args [])
{
int nRowMatrixA, ncolsMatrixA;
int nRowMatrixB, ncolsMatrixB;
int nRowMatrixC, ncolsMatrixC;
int i, j, k;
Scanner input = new Scanner(System.in);
System.out.print("Enter dimision of matrix A :\n");
nRowMatrixA = input.nextInt();
ncolsMatrixA = input.nextInt();
System.out.print("Enter dimision of matrix B :\n");
nRowMatrixB = input.nextInt();
ncolsMatrixB = input.nextInt();
nRowMatrixC = nRowMatrixA ;
ncolsMatrixC = ncolsMatrixB ;
double[][] matrixA = new double[nRowMatrixA][ncolsMatrixA];
double[][] matrixB = new double[nRowMatrixB][ncolsMatrixB];
double[][] matrixC = new double[nRowMatrixC][ncolsMatrixC];
inputarray(matrixA,'a');
inputarray(matrixB,'b');
for(i=0; i < nRowMatrixA; i++)
{
for(j=0 ; j < ncolsMatrixB; j++)
{
for(k=0; k < nRowMatrixB; k++){
matrixC[j] += matrixA[k] * matrixB[k][j];
}
}
}
System.out.println("Matrix C = A*B\n");
outputarray(matrixC);
}
public static void inputarray (double array [][], char matrixName){
Scanner input = new Scanner (System.in);
for (int i=0; i < array.length; i++) {
for(int j=0; j < array.length; j++){
System.out.printf("Enter %s[%2d][%2d] : ", matrixName, i, j);
array[j]=input.nextDouble();
}
}
}
public static void outputarray (double array [][]){
for (int row = 0; row < array.length; row++){
for(int column = 0; column < array[row].length; column++)
System.out.printf("%8.2f\t", array[row][column]);
System.out.println();
}
}
}
اللون الأحمر ماهو عمل for ..
الأزرق طبعا ما فهمت كيفية عملها ؟
i , j , k ماهي وماذا تعمل ..؟؟
ياليت شرح المصفوفة .. ولو أردت تحويلها لجمع مصفوفتين ماذا راح يتغيير .؟؟
