Posts Tagged matrix

Program to sort elements of a matrix.

#include<stdio.h>

sorting(int *a, int n,int m)
{ int l,i,j,min,temp;
l=n*m;
for(i=0;i<l;i++)
{ min= *(a+i);
for(j=i;j<l;j++)
{ if(min > *(a+j))
{ min=*(a+j);
*(a+j)=*(a+i);
*(a+i)=min;
}
}
}

}

main()
{ int i,k=0,j,a[2][2],min=0;
printf("Enter the elements of matrix:: ");
for(i=0;i<2;i++)
for(j=0;j<2;j++)
scanf("%d",&a[i][j]);

printf("\nOriginal Array is:: ");
for(i=0;i<2;i++)
{ printf("\n");
for(j=0;j<2;j++)
printf("\t%d",a[i][j]);
}

sorting(a,2,2);

printf("\nSorted Array is:: ");
for(i=0;i<2;i++)
{ printf("\n");
for(j=0;j<2;j++)
printf("\t%d",a[i][j]);
}
  puts("");

}

, , ,

1 Comment

Program that compute sum of each rows and sum of each columns.

import java.io.*;
class test
{
public static void main(String[] asd)throws IOException
{
BufferedReader obj=new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter the values Rows and Columns of Matrix.");
String num=obj.readLine();
int r=Integer.parseInt(num);
num=obj.readLine();
int c=Integer.parseInt(num);
int m[][]= new int[r][/c];
System.out.println("Enter the values of the matrix not more then "+(r*c)+".");
for(int i=0;i<r;i++)
for(int j=0;j<c;j++)
{
num=obj.readLine();
m[i][j]=Integer.parseInt(num);
}
System.out.println("You Matrix is::");
for(int i=0;i<r;i++)
{    for(int j=0;j<c;j++)
{
System.out.print(m[i][j]+"        ");
}
System.out.println();
}
int sum;
for(int i=0;i<r;i++)
{   sum=0;
for(int j=0;j<c;j++)
{
sum+=m[i][j];
}
System.out.println("Sum of "+(i+1)+"row is "+sum+".");
}
for(int j=0;j<c;j++)
{ sum=0;
for(int i=0;i<r;i++)
{
sum+=m[i][j];
}
System.out.println("Sum of "+(j+1)+"column is "+sum+".");
}
}
}

, , ,

1 Comment

Program to find minimum and maximum element of a matrix.

import java.io.*;
class test
{
public static void main(String[] asd)throws IOException
{
BufferedReader obj=new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter the values of Rows and Columns of Matrix.");
String num=obj.readLine();
int r=Integer.parseInt(num);
num=obj.readLine();
int c=Integer.parseInt(num);
int m[][]= new int[r][/c];
int  max, min;
System.out.println("Enter the values of the matrix not more then "+(r*c)+".");
for(int i=0;i<r;i++)
for(int j=0;j<c;j++)
{
num=obj.readLine();
m[i][j]=Integer.parseInt(num);
}
System.out.println("Original matrix::");
for(int i=0;i<r;i++)
{    for(int j=0;j<c;j++)
{
System.out.print(m[i][j]+"    ");
}
System.out.println();
}
// MAXIMUM element of the matrix
max=m[0][0];
for(int i=0;i<r;i++)
{
for(int j=0;j<c;j++)
{
if(m[i][j]>max)
max=m[i][j];
}
}
System.out.println("Maximum of the matrix is "+max+".");
//MINIMUM element of the matrix
min=m[0][0];
for(int i=0;i<r;i++)
{
for(int j=0;j<c;j++)
{
if(m[i][j]<min)
min=m[i][j];
}
}
System.out.println("Minimum of the matrix is "+min+".");

}

}

, , ,

1 Comment

Program to read and write a matrix.

import java.io.*;
class test
{
public static void main(String[] asd)throws IOException
{
BufferedReader obj=new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter the values Rows and Columns of Matrix.");
String num=obj.readLine();
int r=Integer.parseInt(num);
num=obj.readLine();
int c=Integer.parseInt(num);
int m[][]= new int[r][/c];
System.out.println("Enter the values of the matrix not more then "+(r*c)+".");
for(int i=0;i<r;i++)
for(int j=0;j<c;j++)
{
num=obj.readLine();
m[i][j]=Integer.parseInt(num);
}
System.out.println("You Matrix is::");
for(int i=0;i<r;i++)
{    for(int j=0;j<c;j++)
{
System.out.print(m[i][j]+"        ");
}
System.out.println();
}

}

}

,

No Comments

Program to verify the distributive property of matrix multiplication.

#include <stdio.h>
#define MAX 10

void verifydistributive(int A[][MAX], int B[][MAX], int C[][MAX], int a, int b, int c)
{
int abc[MAX][MAX], abac[MAX][MAX];
int i, j, k;
int flag;

/* This loop computes A(B+C) */
for(i=0; i<a; i++)
for(j=0; j<c; j++)
{
abc[i][j]=0;
for(k=0; k<b; k++)
abc[i][j]+=(A[i][k]*(B[k][j]+C[k][j]));
}

/* This loop computes AB */
for(i=0; i<a; i++)
for(j=0; j<c; j++)
{
abac[i][j]=0;
for(k=0; k<b; k++)
abac[i][j]+=(A[i][k]*B[k][j]);
}

/* AC is added to the previous result */
for(i=0; i<a; i++)
for(j=0; j<c; j++)
for(k=0; k<b; k++)
abac[i][j]+=(A[i][k]*C[k][j]);

flag=1;
for(i=0; i<a; i++)
for(j=0; j<c; j++)
if(abc[i][j]!=abac[i][j])
{
flag=0;
break;
}

printf("Now displaying A(B+C):\n");
for(i=0; i<a; i++, printf("\n"))
for(j=0; j<c; j++)
printf("%d ",abc[i][j]);

printf("And AB+AC gave:\n");
for(i=0; i<a; i++, printf("\n"))
for(j=0; j<c; j++)
printf("%d ",abac[i][j]);

if(flag) printf("And thus it has been verified\n");
else printf("Unfortunately, it does not hold\n");
}

int main()
{
int A[MAX][MAX], B[MAX][MAX], C[MAX][MAX];
int a, b, c;
int i, j;

printf("Enter the order of matrix A: ");
scanf("%d %d",&a,&b);
printf("Enter the number of columns in matrices B and C: ");
scanf("%d",&c);

printf("Now enter the elements of A:\n");
for(i=0; i<a; i++)
for(j=0; j<b; j++)
scanf("%d",&A[i][j]);

printf("Now enter the elements of B:\n");
for(i=0; i<b; i++)
for(j=0; j<c; j++)
scanf("%d",&B[i][j]);

printf("Now enter the elements of C:\n");
for(i=0; i<b; i++)
for(j=0; j<c; j++)
scanf("%d",&C[i][j]);

verifydistributive(A,B,C,a,b,c);

return 0;
}

, , , ,

No Comments

Program for calculating Determinant of two 2D matrix

#include<stdio.h>                            //INCLUDING HEADER FILES
#include<math.h>

int mat[20][20],index[20][20],n,d[20];                    //DECLARING GLOBAL VARIABLES
void calc(int);                                //FUNCTION calc() DECLERED HERE

main()                                    //FUNCTION main() STARTS HERE
{
int a,i,j;                            //DECLARING LOCAL VARIABLES FOR main()
printf("\n          ENTER THE ORDER ::");            //GETTING THE ORDER OF DETERMINANT
scanf("%d",&n);
printf("\n          ENTER THE MATRIX ::");            //GETTING THE DETERMINANT
for(i=0;i<n;i++)                        //ROWWISE
for(j=0;j<n;j++)
scanf("%d",&mat[i][j]);
for(i=0;i<n;i++)
index[n-1][i]=i;
a=n-1;
calc(a);                            //CALLING THE FUNCTION calc() WITH PARAMETER a

printf("\n          VALUE OF THE DETERMINANT \n\n");        //PRINTING THE DETERMINANT ...
for(i=0;i<n;i++)
{
printf("             ");
for(j=0;j<n;j++)
printf("%5d",mat[i][j]);
printf("\n");
}
printf("\n          IS EQUAL TO %d\n\n",d[a]);            //....AND ITS VALUE
}                                    //END OF main()

void calc(int i)                            //FUNCTION calc()'S DEFINITION STARTS HERE
{
int j,k,t;                            //DECLARING LOCAL VARIABLES FOR calc()
for(j=0;j<=i;j++)
{
t=0;
for(k=0;k<=i;k++)
{
if(j==k)
continue;
else
{
index[i-1][t]=index[i][k];
t++;
}
}
if(i>2)
calc(i-1);                    //FUNCTION calc() RELOADED
if(i==2)
d[i]+=(mat[n-2][index[1][0]]*mat[n-1][index[1][1]]-mat[n-1][index[1][0]]*mat[n-2][index[1][1]])*mat[n-3][index[i][j]]*pow(-1,(n-i-1)+(index[i][j]));
else
d[i]+=mat[n-i-1][index[i][j]]*d[i-1]*pow(-1,(n-i-1)+(index[i][j]));
   }
}                                    //END OF calc()

, ,

5 Comments