Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- #define ll long long
- ll a[1009][1009],b[1009][1009],c[1009][1009];
- int main()
- {
- //as we declared the arrays globally so no need to set their value to 0 before applying multiplication
- ll n,m,i,j,p,q;
- char ax;
- printf("Welcome To Matrix Operations\n1.Type 'A/a' to perform addition\n2.Type 'S/s' to perform Subtraction\n3.Type 'M/m' to perform Multiplication\n");
- scanf("%c",&ax);
- if(ax=='A' || ax=='a')
- {
- printf("To perform Addition 2 Matrix Row and column must be same\nInputs for row and column\n");
- scanf("%lld %lld",&n,&m);
- puts("Inputs for First matrix");
- for(i=0; i<n; i++)
- for(j=0; j<m; j++)
- scanf("%lld",&a[i][j]);
- puts("Input for second matrix");
- for(i=0; i<n; i++)
- for(j=0; j<m; j++)
- scanf("%lld",&b[i][j]);
- for(i=0; i<n; i++)
- for(j=0; j<m; j++)
- c[i][j]=a[i][j]+b[i][j];
- printf("\nOutputs\n");
- for(i=0; i<n; i++)
- {
- for(j=0; j<m; j++)
- printf("%lld ",c[i][j]);
- printf("\n");
- }
- }
- else if(ax=='S' || ax=='s')
- {
- printf("To perform Subtraction 2 Matrix Row and column must be same\nInputs for Row and column\n");
- scanf("%lld %lld",&n,&m);
- puts("Inputs for First matrix");
- for(i=0; i<n; i++)
- for(j=0; j<m; j++)
- scanf("%lld",&a[i][j]);
- puts("Input for second matrix");
- for(i=0; i<n; i++)
- for(j=0; j<m; j++)
- scanf("%lld",&b[i][j]);
- for(i=0; i<n; i++)
- for(j=0; j<m; j++)
- c[i][j]=a[i][j]-b[i][j];
- printf("\nOutput\n");
- for(i=0; i<n; i++)
- {
- for(j=0; j<m; j++)
- printf("%lld ",c[i][j]);
- printf("\n");
- }
- }
- else if(ax=='M' || ax=='m')
- {
- printf("A's Row: ");
- scanf("%lld",&n);
- printf("A's Column/B's Row: ");
- scanf("%lld",&m);
- printf("B's Column: ");
- scanf("%lld",&q);
- puts("Input for First matrix");
- for(i=0; i<n; i++)
- for(j=0; j<m; j++)
- scanf("%lld",&a[i][j]);
- puts("Input for Second matrix");
- for(i=0; i<m; i++)
- for(j=0; j<q; j++)
- scanf("%lld",&b[i][j]);
- for(i=0; i<n; i++)
- for(j=0; j<q; j++)
- for(p=0; p<m; p++)
- c[i][j]+=a[i][p] * b[p][j];
- printf("\nOutput\n");
- for(i=0; i<n; i++)
- {
- for(j=0; j<q; j++)
- {
- printf("%lld ",c[i][j]);
- }
- printf("\n");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement