Popular Posts

Showing posts with label Matrix. Show all posts
Showing posts with label Matrix. Show all posts

Saturday, November 28, 2015

Matrix Multiplication By Using Pointer and Array

#include<stdio.h>
#include<windows.h>

void input(int *ptr);
void outpt(void);
void cal(void);

/*Declaring Global variable*/
int a[2][2],b[2][2],c[2][2],sum,i,j,k;


void main()
{
    int *p;
    p=a;
    printf("Enter First Matrix Elements :\n");
    input(p);/*Calling input() function for input*/
    printf("\n\n");
    p=b;
    printf("Enter Second Matrix Elements :\n");
    input(p);/*Calling input() function for input*/
    cal();/*Calling cal() for multiplication*/
    printf("\n\n");/*printing two new line*/
    printf("Multiplication of two matrix:\n\n\n");
    outpt();/*printing output*/

}


void input(int *ptr)/*input user define function*/
{
    for(i=0;i<2;i++)
    {
        for(j=0;j<=1;j++)
        {
            scanf("%d",&*ptr);
            ptr++;
        }
    }
}

void cal(void)/*cal user define function*/
{
    for(i=0;i<2;i++)
    {
        for(j=0;j<=1;j++)
        {
            sum=0;
            for(k=0;k<2;k++)
            {
               sum+=a[i][k]*b[k][j];
            }
            c[i][j]=sum;
        }
    }
}

void outpt(void)/*output user define function*/
{
    for(i=0;i<2;i++)
    {
        for(j=0;j<2;j++)
        {
            printf("%6d ", c[i][j]);
            Sleep(1000);
        }
        printf("\n\n");
    }

}

Matrix Information

#include<stdio.h>
#include<conio.h>

void main()
{
    int row, col,row_t,col_t,sumAvb=0,sumBlw=0;
    printf("Enter Row And Collum :");
    scanf("%d%d", &row, &col);
    col_t=col;
    row_t=row;
    int matrix[row_t][col_t];
    for(row=1;row<=row_t;++row)
    {
        for(col=1;col<=col_t;++col)
        {
            printf("element[%d][%d]",row,col);
            scanf("%d",&matrix[row-1][col-1]);
        }
        printf("\n");
    }
    printf("Your matrix is :\n\n\t\t");
    for(row=0;row<row_t;row++)
    {
        for(col=0;col<col_t;col++)
        {
            printf("%d\t",matrix[row][col]);
        }
        printf("\n\t\t");
    }
    printf("\nDiagonal is: \n\t\t");
    for(row=0;row<row_t;row++)
    {
        for(col=0;col<col_t;col++)
        {
            if(row==col)
            {
                printf("%d\t",matrix[row][col]);
            }
        }
    }
    printf("\nAvove is: \n\t\t");
    for(row=0;row<row_t;row++)
    {
        for(col=0;col<col_t;col++)
        {
            if(row<col)
            {
                printf("%d\t",matrix[row][col]);
                sumAvb+=matrix[row][col];
            }
        }
    }
    printf("\nBelow is : \n\t\t");
    for(row=0;row<row_t;row++)
    {
        for(col=0;col<col_t;col++)
        {
            if(row>col)
            {
                printf("%d\t",matrix[row][col]);
                sumBlw+=matrix[row][col];
            }
        }
    }
    printf("\nSum of avove is = %d\nSum of below is = %d \n\n", sumAvb, sumBlw);
    getch();
}

Matrix Multiplication In C

#include<stdio.h>

void main()
{
    int c[2][2],i,j,k,sum=0;
    int a[2][2] = { {5,4},
                    {4,4} };
    int b[2][2] = { {6,7},
                    {4,8} };
    printf("The matrix A is :\n\n\t\t");
    for(i=0;i<2;i++)
    {
        for(j=0;j<2;j++)
        {
            printf("%d\t",a[i][j]);
        }
        printf("\n\t\t");
    }
    printf("\nThe matrix B is :\n\n\t\t");
    for(i=0;i<2;i++)
    {
        for(j=0;j<2;j++)
        {
            printf("%d\t",b[i][j]);
        }
        printf("\n\t\t");
    }
    printf("\nMultiplication of A and B matrix is: \n\n\t\t");
    for(i=0;i<2;i++)
    {
        for(j=0;j<2;j++)
        {
            for(k=0;k<2;k++)
            {
                sum+=(a[i][k]*b[k][j]);
            }
            c[i][j]=sum;
            printf("%d\t",c[i][j]);
        }
        printf("\n\t\t");
    }
}