TheDeveloperBlog.com

Home | Contact Us

C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML

Program to Calculate The Subtraction of 2 Matrices

Program to Calculate The Subtraction of 2 Matrices on fibonacci, factorial, prime, armstrong, swap, reverse, search, sort, stack, queue, array, linkedlist, tree, graph etc.

<< Back to PROGRAM

Program to calculate the subtraction of 2 matrices

Explanation

In this program, we need to subtract two matrices and print the resulting matrix.

Subtraction of two matrices:

Matrix B can be subtracted from matrix A or vice versa if and only if they have same dimensions that are, the same number of rows and columns. It is not possible to subtract a 2 � 3 matrix from a 3 � 2 matrix. Subtraction of two matrices can be performed by subtracting their corresponding elements as

(A - B)ij = Aij - Bij
Program to calculate the subtraction of 2 matrices

Subtraction of two matrices can be performed by looping through the first and second matrix. Calculating the difference between their corresponding elements and store the result in the third matrix.

Algorithm

  1. Declare and initialize two two-dimensional arrays a and b.
  2. Calculate the number of rows and columns present in the array a (as dimensions of both the arrays are same) and store it in variables rows and cols respectively.
  3. Declare another array diff with dimensions present in rows and columns.
  4. Loop through the arrays a and b, calculate the difference between the corresponding elements
    e.g a11 - b11 = diff11
  5. Display the elements of array diff.

Solution

Python

#Initialize matrix a
a = [
        [4, 5, 6],
        [3, 4, 1],
        [1, 2, 3]
    ];
 
#Initialize matrix b
b = [
          [2, 0, 3],
         [2, 3, 1],
         [1, 1, 1]
     ];
 
#Calculates number of rows and columns present in given matrix
rows = len(a);
cols = len(a[0]);
 
#Array diff will hold the result and is initialized with zeroes.
diff = [[0]*rows for i in range(cols)];
 
#Performs subtraction of matrices a and b. Store the result in matrix diff
for i in range(0, rows):
    for j in range(0, cols):
        diff[i][j] = a[i][j] - b[i][j];
 
print("Subtraction of two matrices: ");
for i in range(0, rows):
    for j in range(0, cols):
       print(diff[i][j]),
 
    print(" ");

Output:

Subtraction of two matrices: 
2 5 3 
1 1 0 
0 1 2 

C

#include <stdio.h>
 
int main()
{
    int rows, cols;
        
    //Initialize matrix a
    int a[][3] = {
                    {4, 5, 6},
                    {3, 4, 1},
                    {1, 2, 3}
                 };
    
    //Initialize matrix b
    int b[][3] = {
                      {2, 0, 3},
                     {2, 3, 1},
                     {1, 1, 1}
                 };
    
    //Calculates number of rows and columns present in given matrix
    rows = (sizeof(a)/sizeof(a[0]));
    cols = (sizeof(a)/sizeof(a[0][0]))/rows;
    
    //Array diff will hold the result
    int diff[rows][cols];
    
    //Performs subtraction of matrices a and b. Store the result in matrix diff
    for(int i = 0; i < rows; i++){
        for(int j = 0; j < cols; j++){
            diff[i][j] = a[i][j] - b[i][j];
        }
    }
    
    printf("Subtraction of two matrices: \n");
    for(int i = 0; i < rows; i++){
        for(int j = 0; j < cols; j++){
           printf("%d ", diff[i][j]);
        }
        printf("\n");
    }
 
    return 0;
}

Output:

Subtraction of two matrices: 
2 5 3 
1 1 0 
0 1 2 

JAVA

public class SubMatrix
{
    public static void main(String[] args) {
        int rows, cols;
        
        //Initialize matrix a
          int a[][] = {
                          {4, 5, 6},
                          {3, 4, 1},
                          {1, 2, 3}
                       };
          
          //Initialize matrix b
          int b[][] = {
                          {2, 0, 3},
                         {2, 3, 1},
                         {1, 1, 1}
                     };
          
          //Calculates number of rows and columns present in given matrix
          rows = a.length;
        cols = a[0].length;
        
          //Array diff will hold the result
        int diff[][] = new int[rows][cols];
        
        //Performs subtraction of matrices a and b. Store the result in matrix diff
        for(int i = 0; i < rows; i++){
            for(int j = 0; j < cols; j++){
                diff[i][j] = a[i][j] - b[i][j];
            }
        }
        
        System.out.println("Subtraction of two matrices: ");
        for(int i = 0; i < rows; i++){
            for(int j = 0; j < cols; j++){
               System.out.print(diff[i][j] + " ");
            }
            System.out.println();
        }
    }
}

Output:

Subtraction of two matrices: 
2 5 3 
1 1 0 
0 1 2 

C#

using System;
                    
public class SubMatrix
{
    public static void Main()
    {
        int rows, cols;
        
        //Initialize matrix a
          int[,] a = {
                          {4, 5, 6},
                          {3, 4, 1},
                          {1, 2, 3}
                     };
          
          //Initialize matrix b
          int[,] b = {
                          {2, 0, 3},
                         {2, 3, 1},
                         {1, 1, 1}
                    };
          
          //Calculates number of rows and columns present in given matrix
          rows = a.GetLength(0);
        cols = a.GetLength(1);
        
          //Array diff will hold the result
        int[,] diff = new int[rows, cols];
        
        //Performs subtraction of matrices a and b. Store the result in matrix diff
        for(int i = 0; i < rows; i++){
            for(int j = 0; j < cols; j++){
                diff[i,j] = a[i,j] - b[i,j];
            }
        }
        
        Console.WriteLine("Subtraction of two matrices: ");
        for(int i = 0; i < rows; i++){
            for(int j = 0; j < cols; j++){
               Console.Write(diff[i,j] + " ");
            }
            Console.WriteLine();
        }
    }
}

Output:

Subtraction of two matrices: 
2 5 3 
1 1 0 
0 1 2 

PHP

<!DOCTYPE html>
<html>
<body>
<?php
//Initialize matrix a
$a = array(
            array(4, 5, 6),
            array(3, 4, 1),
            array(1, 2, 3)
          );
 
//Initialize matrix b
$b = array(
              array(2, 0, 3),
             array(2, 3, 1),
             array(1, 1, 1)
           );
 
//Calculates number of rows and columns present in given matrix
$rows = count($a);
$cols = count($a[0]);
 
//Array diff will hold the result and initialize it with 0
$diff = array_fill(0, $cols, array_fill(0, $rows, 0));
 
//Performs subtraction of matrices a and b. Store the result in matrix diff
for($i = 0; $i < $rows; $i++){
    for($j = 0; $j < $cols; $j++){
        $diff[$i][$j] = $a[$i][$j] - $b[$i][$j];
    }
}
 
print("Subtraction of two matrices: <br>");
for($i = 0; $i < $rows; $i++){
    for($j = 0; $j < $cols; $j++){
       print($diff[$i][$j] . " ");
    }
    print("<br>");
}
?>
</body>
</html>

Output:

Subtraction of two matrices: 
2 5 3 
1 1 0 
0 1 2 

Next Topic#




Related Links:


Related Links

Adjectives Ado Ai Android Angular Antonyms Apache Articles Asp Autocad Automata Aws Azure Basic Binary Bitcoin Blockchain C Cassandra Change Coa Computer Control Cpp Create Creating C-Sharp Cyber Daa Data Dbms Deletion Devops Difference Discrete Es6 Ethical Examples Features Firebase Flutter Fs Git Go Hbase History Hive Hiveql How Html Idioms Insertion Installing Ios Java Joomla Js Kafka Kali Laravel Logical Machine Matlab Matrix Mongodb Mysql One Opencv Oracle Ordering Os Pandas Php Pig Pl Postgresql Powershell Prepositions Program Python React Ruby Scala Selecting Selenium Sentence Seo Sharepoint Software Spellings Spotting Spring Sql Sqlite Sqoop Svn Swift Synonyms Talend Testng Types Uml Unity Vbnet Verbal Webdriver What Wpf