Coding Question 4 Free Section
Matrix Multiplication Program
C
#include <stdio.h> int main() { int m, n, p, q, c, d, k, sum = 0; int first[10][10], second[10][10], multiply[10][10]; printf("Enter number of rows and columns of first matrix\n"); scanf("%d%d", &m, &n); printf("Enter elements of first matrix\n"); for (c = 0; c < m; c++) for (d = 0; d < n; d++) scanf("%d", &first[c][d]); printf("Enter number of rows and columns of second matrix\n"); scanf("%d%d", &p, &q); if (n != p) printf("The matrices can't be multiplied with each other.\n"); else { printf("Enter elements of second matrix\n"); for (c = 0; c < p; c++) for (d = 0; d < q; d++) scanf("%d", &second[c][d]); for (c = 0; c < m; c++) { for (d = 0; d < q; d++) { for (k = 0; k < p; k++) { sum = sum + first[c][k]*second[k][d]; } multiply[c][d] = sum; sum = 0; } } printf("Product of the matrices:\n"); for (c = 0; c < m; c++) { for (d = 0; d < q; d++) printf("%d\t", multiply[c][d]); printf("\n"); } } return 0; }
Java
public class MultiplyMatrices {
public static void main(String[] args) {
int r1 = 2, c1 = 3;
int r2 = 3, c2 = 2;
int[][] firstMatrix = { {3, -2, 5}, {3, 0, 4} };
int[][] secondMatrix = { {2, 3}, {-9, 0}, {0, 4} };
// Mutliplying Two matrices
int[][] product = new int[r1][c2];
for(int i = 0; i < r1; i++) {
for (int j = 0; j < c2; j++) {
for (int k = 0; k < c1; k++) {
product[i][j] += firstMatrix[i][k] * secondMatrix[k][j];
}
}
}
// Displaying the result
System.out.println("Sum of two matrices is: ");
for(int[] row : product) {
for (int column : row) {
System.out.print(column + " ");
}
System.out.println();
}
}
}
import java.util.*;
public class MatrixMultiplication{
static void matrixmul(int A[][],int B[][],int C[][],int r1,int c1,int r2,int c2){
for(int i=0;i<r1;i++){
for(int j=0;j<c2;j++){
for(int k=0;k<c1;k++){
C[i][j]+=A[i][k]*B[k][j];
}
}
}
}
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
System.out.println("Enter r1 & c1 for A matrix :");
int r1=sc.nextInt();
int c1=sc.nextInt();
System.out.println("Enter r2 & c2 for B matrix :");
int r2=sc.nextInt();
int c2=sc.nextInt();
int A[][]=new int[r1][c1];
int B[][]=new int[r2][c2];
int C[][]=new int[r1][c2];
if(c1==r2){
System.out.println("Enter the element of A matrix");
for(int i=0;i<r1;i++){
for(int j=0;j<c1;j++){
A[i][j]=sc.nextInt();
}
}
System.out.println("Enter the element of B matrix");
for(int i=0;i<r2;i++){
for(int j=0;j<c2;j++){
B[i][j]=sc.nextInt();
}
}
matrixmul(A,B,C,r1,c1,r2,c2);
System.out.println("The result of matrix multiplicAation is :");
for(int i=0;i<r1;i++){
for(int j=0;j<c2;j++){
System.out.printf("%4d",C[i][j]);
}
System.out.println();
}
}
else{
System.out.println("Multiplication not possible");
}
}
}