Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
12 views11 pages

C Programs for Matrix Operations

The document contains 5 programming assignments for a course on structured programming, including writing programs to check if two matrices are equal, determine if a matrix is an identity matrix, print an upper triangular matrix, calculate row and column sums of a matrix, and find the sum of the left diagonals of a matrix. The assignments provide sample C code solutions to each problem and ask students to complete the programs.

Uploaded by

suwaybid0001
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views11 pages

C Programs for Matrix Operations

The document contains 5 programming assignments for a course on structured programming, including writing programs to check if two matrices are equal, determine if a matrix is an identity matrix, print an upper triangular matrix, calculate row and column sums of a matrix, and find the sum of the left diagonals of a matrix. The assignments provide sample C code solutions to each problem and ask students to complete the programs.

Uploaded by

suwaybid0001
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

BANGABANDHU SEIKH MUJIBUR

RAHMAN DIGITAL UNIVERSITY,


Kaliakair,Gazipur.

Assignment:
Course No: PROG-102
Course Title: Structured Programming
Language (sessional)
Assignment On: Multidimensional matrix operation

Submitted By: Submitted to:


Name: Suwaybid Ahmmed Md. Moshiur Rahman,
Muaz Lecturer,
Id: 2201020 Depertment of IRE,
Depertment : Internet of Bangabandhu Seikh Mujibur
Things and Robotics Rahman Digital University
Engineering
Session : 2022-2023
1. Write a program in C to accept two matrices and
check whether they are equal

#include <stdio.h>

int main(){

int mat1[50][50], mat2[50][50];

int i, j, r1, c1, r2, c2, count = 1;

printf("Input Rows and Columns of the 1st matrix :");

scanf("%d %d", &r1, &c1);

printf("Input Rows and Columns of the 2nd matrix :");

scanf("%d %d", &r2,&c2);

printf("Input elements in the first matrix :\n");

for(i=0;i<r1;i++)

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

{printf("element - [%d],[%d] : ",i,j);

scanf("%d",&mat1[i][j]); } }

printf("Input elements in the second matrix :\n");

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

for(j=0;j<c2;j++) { printf("element - [%d],[%d] : ",i,j);

scanf("%d",&mat2[i][j]); } }

printf("The first matrix is :\n");

for(i=0;i<r1;i++)

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

printf("% 4d",mat1[i][j]);
printf("\n"); }

printf("The second matrix is :\n");

for(i=0;i<r2;i++)

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

printf("% 4d",mat2[i][j]);

printf("\n"); }

if(r1 == r2 && c1 == c2) {

printf("The Matrices can be compared : \n");

for(i=0; i<r1; i++)

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

{ if(mat1[i][j] != mat2[i][j])

{ count = 0;

break;

} } } }

else

{ printf("The Matrices Cannot be compared :\n"); }

if(count == 1 ){ printf("Two matrices are equal.\n\n"); }

else{ printf("But,two matrices are not equal\n\n"); }

return 0; }
2. Write a program in C to check whether a given matrix
is an identity matrix
#include <stdio.h>

int main(){

int arr1[10][10];

int r1,c1;

int i, j, id =1;

printf("Input number of Rows for the matrix :");

scanf("%d", &r1);

printf("Input number of Columns for the matrix :");

scanf("%d",&c1);

printf("Input elements in the first matrix :\n");

for(i=0;i<r1;i++) { for(j=0;j<c1;j++)

{ printf("element - [%d],[%d] : ",i,j);

scanf("%d",&arr1[i][j]); }}

printf("The matrix is :\n");

for(i=0;i<r1;i++)

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

printf("% 4d",arr1[i][j]);

printf("\n"); }

for(i=0; i<r1; i++)

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


{ if(arr1[i][j] != 1 && arr1[j][i] !=0){ id = 0;

break; }}}

if(id == 1 ){

printf(" The matrix is an identity matrix.\n\n");

else { printf(" The matrix is not an identity matrix.\n\n"); }

return 0; }

3. Write a program in C to print or display an upper


triangular matrix
#include <stdio.h>
int main(){
int arr1[10][10],i,j,n;
printf("Input the size of the square matrix : ");
scanf("%d", &n);
printf("Input elements in the first matrix :\n");
for(i=0;i<n;i++)
{ for(j=0;j<n;j++)
{ printf("element - [%d],[%d] : ",i,j);
scanf("%d",&arr1[i][j]); }}
printf("The matrix is :\n");
for(i=0;i<n;i++){
for(j=0;j<n ;j++)
{ printf("% 4d",arr1[i][j]);
printf("\n"); }}
printf("\nupper triangular matrix\n");
for(i=0;i<n;i++)
{ printf("\n");
for(j=0;j<n;j++){ if(i<=j){ printf("% 4d",arr1[i][j]); }
else{ printf("% 4d",0); }}
printf("\n\n"); }
return 0; }

4. Write a program in C to find the sum of rows and


columns of a matrix
#include <stdio.h>
void main() {
int i,j,k,arr1[10][10],rsum[10],csum[10],n;
printf("Input the size of the square matrix : "); scanf("%d", &n);
printf("Input elements in the matrix :\n");
for(i=0;i<n;i++) { for(j=0;j<n;j++)
{ printf("element - [%d],[%d] : ",i,j);
scanf("%d",&arr1[i][j]); }}
printf("The matrix is :\n");
for(i=0;i<n;i++)
{ for(j=0;j<n ;j++)
printf("% 4d",arr1[i][j]);
printf("\n"); }
/* Sum of rows */
for(i=0;i<n;i++)
{ rsum[i]=0;
for(j=0;j<n;j++)
rsum[i]=rsum[i]+arr1[i][j]; }
/* Sum of Column: */
for(i=0;i<n;i++)
{ csum[i]=0;
for(j=0;j<n;j++)
csum[i]=csum[i]+arr1[j][i]; }
printf("The sum or rows and columns of the matrix is :\n");
for(i=0;i<n;i++)
{ for(j=0;j<n;j++)
printf("% 4d",arr1[i][j]);
printf("% 8d",rsum[i]);
printf("\n"); }
printf("\n");
for(j=0;j<n;j++) { printf("% 4d",csum[j]); }
printf("\n\n"); }

5. Write a program in C to find the sum of the left


diagonals of a matrix
#include <stdio.h>
void main()
{
int i,j,arr1[50][50],sum=0,n,m=0;
printf("Input the size of the square matrix : ");
scanf("%d", &n);
m=n;
printf("Input elements in the first matrix :\n");
for(i=0;i<n;i++)
{ for(j=0;j<n;j++)
{ printf("element - [%d],[%d] : ",i,j);
scanf("%d",&arr1[i][j]); }}
printf("The matrix is :\n");
for(i=0;i<n;i++)
{ for(j=0;j<n ;j++)
printf("% 4d",arr1[i][j]);
printf("\n"); }
/* calculate the sum of left diagonals*/
for(i=0;i<n;i++)
{ m=m-1;
for(j=0;j<n ;j++)
{ if (j==m)
{ sum= sum+arr1[i][j]; }}}
printf("Addition of the left Diagonal elements is :%d\n",sum); }

You might also like