Computer Scientists are Pretty Pessimistic

Showing posts with label 2D Array. Show all posts
Showing posts with label 2D Array. Show all posts

Friday, 6 November 2015

Write a code to search for a value in the matrix and change it with user given value. Your code should give the position of that number too. User will give 2 inputs: 1.) What value to change/search and 2.) What is the new value.

                
                    Suppose C=[1 3 5;2 4 6;9 8 7]


Solution :: Code :: This code is written with C++ ;


#include <iostream>
using namespace std;
int main ()
{
    int mat[3][3] ={1,3,5,
                    2,4,6,
                    9,8,7};
    int change,value,i,j,p,q,f=0;
    cout<<"Enter which value you want to change: ";
    cin>>change;

    cout<<"Enter value: ";
    cin>>value;

    for(i=0;i<3;i++) // search and change value
    {
        for(j=0;j<3;j++)
        {
            if(mat[i][j]==change)
                {
                    mat[i][j]=value;
                    p=i;
                    q=j;
                    f=1;
                    break;
                }
        }
        if(f==1) break;
    }
    if(f==1)
    {
        cout<<"The new matrix is:"<<endl;
        for(i=0;i<3;i++)
        {
            for(j=0;j<3;j++)
            {
                cout<<mat[i][j]<<" ";
            }
            cout<<"\n";
        }
        cout<<"The position of changed number is: ("<<p+1<<","<<q+1<<")\n";
    }
    else
        cout<<"Number not found"<<endl;

    return 0;
}

Sunday, 25 October 2015

WAP to transpose a square matrix.


What is transpose matrix ?
Find it here : Transpose Matrix Defination

Code ::

#include <stdio.h>
int main ()
{
    int matrix[100][100],trans[100][100],row,col,i,j;
    printf("Enter rows and columns size of matrix: ");
    scanf("%d %d",&row,&col);
    for(i=0;i<row;i++)
    {
        for(j=0;j<col;j++)
        {
            scanf("%d",&matrix[i][j]);
        }
    }

    printf("\nMain Matrix is:\n");
    for(i=0;i<row;i++)
    {
        for(j=0;j<col;j++)
        {
            printf("%d ",matrix[i][j]);
        }
        printf("\n");
    }
    for(i=0;i<row;i++)
    {
        for(j=0;j<col;j++)
        {
            trans[j][i]=matrix[i][j];
        }
    }
    printf("\nTranspose matrix is:\n");
    for(i=0;i<col;i++)
    {
        for(j=0;j<row;j++)
        {
            printf("%d ",trans[i][j]);
        }
        printf("\n");
    }
    return 0;
}

Friday, 4 September 2015

WAP to print all the prime numbers from a 2D array and find out their sum.

#include <stdio.h>
#include <math.h>
int main ()
{
    int a[3][3],i,j,prime,k,p;
    printf("Enter values:\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    printf("Prime numbers are:\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            prime=0;
            p=sqrt(a[i][j]);
            for(k=2;k<=p;k++)
            {
                if((a[i][j]%k)==0)
                    prime=1;
            }
            if(prime==0)
                printf("%d ",a[i][j]);
        }
    }
    return 0;
}

WAP to display those elements of a two dimensional array which are divisible by 10. Also find their sum.

#include <stdio.h>
int main ()
{
    int a[5][5],i,j,sum=0;
    printf("Enter Matrix (5x5):\n");
    for(i=0;i<5;i++)
    {
        for(j=0;j<5;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    printf("Numbers which are divisible by 10:\n");
    for(i=0;i<5;i++)
    {
        for(j=0;j<5;j++)
        {
            if(a[i][j]%10==0)
            {
                printf("%d ",a[i][j]);
                sum=sum+a[i][j];
            }
        }
    }
    printf("\nSum of numbers which are divisible by 10: %d",sum);
    return 0;
}

WAP to find out the sum of negative, positive, odd and even integers separately from a two dimensional array.

#include <stdio.h>
int main ()
{
    int a[5][5],i,j,neg=0,pos=0,odd=0,even=0;
    printf("Enter Matrix (5x5):\n");
    for(i=0;i<5;i++)
    {
        for(j=0;j<5;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    for(i=0;i<5;i++)
    {
        for(j=0;j<5;j++)
        {
            if(a[i][j]<0)
                neg=neg+a[i][j];
            if(a[i][j]>=0)
                pos=pos+a[i][j];
            if(a[i][j]%2==0)
                even=even+a[i][j];
            if(a[i][j]%2!=0)
                odd=odd+a[i][j];
        }
    }
    printf("Sum of positive numbers: %d\n",pos);
    printf("Sum of negative numbers: %d\n",neg);
    printf("Sum of even numbers: %d\n",even);
    printf("Sum of odd numbers: %d\n",odd);
    return 0;
}

WAP to find out the product of two matrices.

#include <stdio.h>
int main ()
{
    int a[3][3],b[3][3],c[3][3],i,j,k,sum=0;
    printf("Enter 1st Matrix (3x3):\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    printf("Enter 2nd Matrix (3x3):\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            scanf("%d",&b[i][j]);
        }
    }
    for(i=0;i<3;i++)
    {
        for(k=0;k<3;k++)
        {
            for(j=0;j<3;j++)
            {
                sum=sum+a[i][j]*b[j][k];
            }
            c[i][k]=sum;
            sum=0;
        }
    }
    printf("The product of two matrixs:\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            printf("%d ",c[i][j]);
        }
        printf("\n");
    }
    return 0;
}

WAP to find out the sum and difference of two matrices.

#include <stdio.h>
int main ()
{
    int a[3][3],b[3][3],c[3][3],i,j;
    printf("Enter 1st Matrix (3x3):\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    printf("Enter 2nd Matrix (3x3):\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            scanf("%d",&b[i][j]);
        }
    }
    printf("The sum of two matrix:\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            c[i][j]=a[i][j]+b[i][j];
            printf("%d ",c[i][j]);
        }
        printf("\n");
    }
    printf("The difference of two matrix:\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            c[i][j]=a[i][j]-b[i][j];
            printf("%d ",c[i][j]);
        }
        printf("\n");
    }
    return 0;
}

WAP to display the upper and lower triangle of a matrix.

#include <stdio.h>
int main ()
{
    int row,col,m[50][50],u_sum=0,l_sum=0;
    printf("Enter number of row:\n");
    scanf("%d",&row);
    printf("Enter number of column:\n");
    scanf("%d",&col);
    int i,j;
    printf("Enter values:\n");
    for(i=0;i<row;i++) //input
    {
        for(j=0;j<col;j++)
        {
            scanf("%d",&m[i][j]);
        }
    }
    for(i=0;i<row;i++) //upper triangle sum
    {
        for(j=i+1;j<col;j++)
        {
            u_sum=u_sum+m[i][j];
        }
    }
    for(i=1;i<row;i++) //lower triangle sum
    {
        for(j=0;j<i;j++)
        {
            l_sum=l_sum+m[i][j];
        }
    }
    printf("Upper Triangle Sum: %d\n",u_sum);
    printf("Lower Triangle Sum: %d\n",l_sum);
    return 0;
}

WAP to find out the sum of non diagonal elements.

#include <stdio.h>
int main ()
{
    int a[50][50],i,j,row,col,sum=0;
    printf("Enter number of row:\n");
    scanf("%d",&row);
    printf("Enter number of column:\n");
    scanf("%d",&col);
    printf("Enter values:\n");
    for(i=0;i<row;i++) //input
    {
        for(j=0;j<col;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    printf("Main Matrix\n");
    for(i=0;i<row;i++)
    {
        for(j=0;j<col;j++)
        {
            printf("%d ",a[i][j]);
        }
        printf("\n");
    }
    for(i=0;i<row;i++) //adding
    {
        if(i==0||i==(row-1))
        {
            for(j=1;j<=(col-2);j++)
                sum=sum+a[i][j];
        }
        else
            for(j=0;j<=(col-1);j=j+(col-1))
            {
                sum=sum+a[i][j];
            }
    }

    printf("Sum of non-diagonal elements is: %d",sum);
    return 0;
}

WAP to print the left and right diagonal of a square matrix and find out their sum separately.

#include <stdio.h>
int main ()
{
    int i,j,r_sum=0,l_sum=0,a[3][3];
    printf("Enter values:\n");
    for(i=0;i<3;i++) //input
    {
        for(j=0;j<3;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    printf("Main Square Matrix\n");
    for(i=0;i<3;i++) //main matrix
    {
        for(j=0;j<3;j++)
        {
            printf("%d ",a[i][j]);
        }
        printf("\n");
    }
    printf("\n\nLeft Diagonal\n");
    for(i=0;i<3;i++) //left diagonal
    {
        printf("%d ",a[i][i]);
    }
    printf("\n\nRight Diagonal\n");
    for(i=0,j=2;j>=0,i<3;j--,i++) //right diagonal
    {
            printf("%d ",a[i][j]);
    }
    for(i=0,j=2;j>=0,i<3;j--,i++) // sum
    {
        l_sum=l_sum+a[i][i];
        r_sum=r_sum+a[j][j];
    }
    printf("\n\nLeft diagonal sum is: %d\n",l_sum);
    printf("\nRight diagonal sum is: %d\n",r_sum);
    return 0;
}

WAP to double all the elements of a matrix.

#include <stdio.h>
int main ()
{
    int a[3][3],i,j;
    printf("Enter values:\n");
    for(i=0;i<3;i++) //input
    {
        for(j=0;j<3;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    for(i=0;i<3;i++) //double
    {
        for(j=0;j<3;j++)
        {
            a[i][j]=a[i][j]*2;
        }
    }
    printf("New values are:\n");
    for(i=0;i<3;i++) //output
    {
        for(j=0;j<3;j++)
        {
            printf("%d ",a[i][j]);
        }
        printf("\n");
    }
    return 0;
}

WAP to find out the row sum and column sum of a two dimensional array of integers.

#include <stdio.h>
int main ()
{
    int a[3][3],i,j,r_sum,c_sum;
    printf("Enter values:\n");
    for(i=0;i<3;i++) //input
    {
        for(j=0;j<3;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    for(i=0;i<3;i++) //calculatoin & output
    {
        r_sum=0;
        c_sum=0;
        for(j=0;j<3;j++)
        {
            r_sum=r_sum+a[i][j];
        }
        for(j=0;j<3;j++)
        {
            c_sum=c_sum+a[j][i];
        }
        printf("Row %d sum is: %d\n",i+1,r_sum);
        printf("Column %d sum is: %d\n\n",i+1,c_sum);
    }
    return 0;
}

WAP to display the values of a two dimensional array in the matrix form.

#include <stdio.h>
int main ()
{
    int a[3][3],i,j;
    printf("Enter values:\n");
    for(i=0;i<3;i++) //input
    {
        for(j=0;j<3;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    printf("Values are:\n");
    for(i=0;i<3;i++) //output
    {
        for(j=0;j<3;j++)
        {
            printf("%d ",a[i][j]);
        }
        printf("\n");
    }
    return 0;
}