Skip to main content

Search This Blog

matrix multiplication in c using functions and pointers

 #include <stdio.h> #define ROWS 3 #define COLS 3 void matrixMultiply(int *mat1, int *mat2, int *result, int rows1, int cols1, int cols2) {     int i, j, k;     // Multiplying matrices     for (i = 0; i < rows1; i++) {         for (j = 0; j < cols2; j++) {             *(result + i * cols2 + j) = 0;             for (k = 0; k < cols1; k++) {                 *(result + i * cols2 + j) += *(mat1 + i * cols1 + k) * *(mat2 + k * cols2 + j);             }         }     } } void displayMatrix(int *mat, int rows, int cols) {     int i, j;     // Displaying matrix     for (i = 0; i < rows; i++) {         for (j = 0; j < cols; j++) {             printf("%d\t", *(mat + i * cols + j)); ...

matrix multiplication in c using functions and pointers

 #include <stdio.h>


#define ROWS 3

#define COLS 3


void matrixMultiply(int *mat1, int *mat2, int *result, int rows1, int cols1, int cols2) {

    int i, j, k;


    // Multiplying matrices

    for (i = 0; i < rows1; i++) {

        for (j = 0; j < cols2; j++) {

            *(result + i * cols2 + j) = 0;

            for (k = 0; k < cols1; k++) {

                *(result + i * cols2 + j) += *(mat1 + i * cols1 + k) * *(mat2 + k * cols2 + j);

            }

        }

    }

}


void displayMatrix(int *mat, int rows, int cols) {

    int i, j;


    // Displaying matrix

    for (i = 0; i < rows; i++) {

        for (j = 0; j < cols; j++) {

            printf("%d\t", *(mat + i * cols + j));

        }

        printf("\n");

    }

}


int main() {

    int mat1[ROWS][COLS] = {{1, 2, 3},

                            {4, 5, 6},

                            {7, 8, 9}};

    int mat2[ROWS][COLS] = {{9, 8, 7},

                            {6, 5, 4},

                            {3, 2, 1}};

    int result[ROWS][COLS];


    // Multiplying matrices

    matrixMultiply((int *)mat1, (int *)mat2, (int *)result, ROWS, COLS, COLS);


    // Displaying matrices

    printf("Matrix 1:\n");

    displayMatrix((int *)mat1, ROWS, COLS);

    printf("\nMatrix 2:\n");

    displayMatrix((int *)mat2, ROWS, COLS);

    printf("\nResultant Matrix:\n");

    displayMatrix((int *)result, ROWS, COLS);


    return 0;

}

  1. Matrix Multiplication Function (matrixMultiply): This function takes pointers to the two matrices (mat1 and mat2) to be multiplied and a pointer to the result matrix (result). Additionally, it takes the dimensions of the matrices (rows1, cols1, and cols2). Inside the function, the matrices are accessed using pointer arithmetic, and matrix multiplication is performed similarly to the previous example.

  2. Display Matrix Function (displayMatrix): This function takes a pointer to a matrix (mat), along with its dimensions (rows and cols). It uses pointer arithmetic to access the elements of the matrix and prints them row by row.

  3. Main Function (main): In the main function, two matrices (mat1 and mat2) are initialized with sample values. Then, the matrixMultiply function is called to compute the product of these matrices, and the result is stored in the result matrix. Finally, the contents of all three matrices are displayed using the displayMatrix function.

This code demonstrates how to multiply two matrices in C using functions and pointers for passing matrices to functions.

Comments

Popular posts from this blog

Bcsl-043 java sem4

Ignou question paper java java Java Solution BCSL 43 dec2016 solution Video BCSL 43 june2016 Solution Video BCSL 43 dec2015 Solution Video BCSL 43 june2015 Solution video BCSL 43 dec2014 Solution Video BCSL 43 june2014 Solution Video BCSL 43 dec2013 Solution Video BCSL43 june2013 Solution Video Dec2016  1.Write a Java program to create an applet to find the simple interest on a given amount, rate of interest and duration. Use proper GUI components in your program. import java.util.*; import java.awt.*; import java.awt.event.*; import java.applet.Applet; /* */ public class simpleinterest extends Applet{ Label l1,l2,l3,l4; TextField t1,t2,t3; Button b1; Image picture; public void init(){ picture = getImage(getCodeBase(),"20160613_091125.jpg"); l1=new Label("Enter the Amount "); l2=new Label("Enter the Rate "); l3=new Label("Enter interest Duration :"); l4=new Label(...

Here you get a leave from the office to have a physical relationship, know why the government has made this unique rule

Here you get a leave from the office to have a physical relationship, know why the government has made this unique rule   There is an official holiday for having a physical relationship, are you surprised to read the headline? But this is true. There is a country where people get leave to have physical relationship. Let us tell about that country and what is the reason behind it. Relationship Desk . The meeting of two hearts or the establishment of a physical relationship between them is a moment. Why would a leave be given for this? But you will find it strange to know that there is a country where the government has made a provision of leave for this. People get leave from office to have sex. The name of that country is Denmark. Yes, this facility has been given to the people in this country. Actually, the decreasing population of Denmark has been a matter of concern for the government there. From time to time, the government there runs such campaigns. Due to which people get the...

Contact Form

Name

Email *

Message *