Java >> Java tutorial >  >> Java

Java-program til at finde hyppigheden af ​​ulige og lige tal i en matrix

I denne øvelse lærer vi, hvordan man finder hyppigheden af ​​ulige og lige tal i en matrix. Men før du går videre, hvis du ikke er bekendt med begreberne for arrayet, så tjek artiklen Arrays in Java.

Nedenfor er den billedlige repræsentation af en matrix.

Input: Indtast matrixelementet:

1 2 3

4 3 2

6 7 8

Output:

Jævn element frekvens:5

Ulige elementfrekvens:4

Program 1:Find hyppigheden af ​​ulige og lige tal i en matrix

I nedenstående program vil vi se, hvordan man beregner frekvensen af ​​ulige og lige tal i en given matrix, når værdierne er brugerdefinerede.

Algorithme

  1. Start
  2. Deklarer variabler for matrixrækker og -kolonner.
  3. Bed brugeren om at initialisere matrixen.
  4. Deklarer matrixen.
  5. Bed brugeren om at initialisere matrixen.
  6. Udskriv den originale matrix...
  7. Deklarer to variable for at tælle de lige og ulige talfrekvenser.
  8. Initialiser disse variable til 0.
  9. Brug to til sløjfer til at iterere gennem elementerne.
  10. Brug den første for-løkke til at iterere gennem rækkerne.
  11. Brug den anden for-løkke til at iterere gennem kolonnerne.
  12. Tjek for hvert element.
  13. Forøg lige tællingsvariablen, hvis matrixelementet er lige.
  14. Forøg den ulige tællevariabel, hvis matrixelementet er ulige.
  15. Udskriv frekvensen for både de lige og ulige elementer i arrayet.
  16. Stop.

Nedenfor er koden til det samme.

/* Java Program to check the even and odd element frequencies*/
import java.util.Scanner;
public class Main 
{
    public static void main(String[] args) 
    {
        int m,n;   //Declare the variables for rows and columns

        //Take input from the user
        Scanner sc = new Scanner(System.in);
        
        System.out.print("Enter number of rows in matrix:");
        m = sc.nextInt();  //Initialize the number of rows

        System.out.print("Enter number of columns in matrix:");
        n = sc.nextInt();  //Initialize the number of columns
 
        int arr[][] = new int[m][n];  //Declare a Matrix
        System.out.println("Enter all the elements of matrix:");
        for (int i = 0; i < m; i++) 
        {
            for (int j = 0; j < n; j++) 
            {
                arr[i][j] = sc.nextInt();     //Initialize the Matrix
            }
        }
        
        //Print the original Matrix
        System.out.println("The Original Matrix:");
        for (int i = 0; i < m; i++)      //Used to iterate over the matrix rows
        {
            for (int j = 0; j < n; j++)    //Used to iterate over the matrix columns
            {
                System.out.print(arr[i][j] + " ");
            }
            System.out.println("");
        }
        
        int even=0,odd=0;   //Variables to store even and odd elements
        
        //Use for loops to iterate through the matrix elements
        for(int i=0;i<m;i++)      //Used to iterate over the matrix rows
        {
            for(int j=0;j<n;j++)   //Used to iterate over the matrix columns
            {
                if(arr[i][j]%2==0)     //Check whether the element is even or not
                {
                    even++;      //Increment the even frequency
                }
                else
                {
                    odd++;      //Increment the odd frequency
                }
            }
        }
        System.out.println("Total Odd Number in the Matrix: " + odd); 
        System.out.println("Total Even Number in the Matrix: " + even); 
         
    }
}


Indtast antallet af rækker i matrix:3
Indtast antallet af kolonner i matrix:3
Indtast alle elementerne i matrix:1 2 3 4 5 6 7 8 9
Originalen Matrix:
1 2 3
4 5 6
7 8 9
Samlet ulige tal i matrixen:5
Samlet lige tal i matrixen:4

Program 2:Find hyppigheden af ​​ulige og lige tal i en matrix

I nedenstående program vil vi se, hvordan man beregner frekvensen af ​​ulige og lige tal i en given matrix, når værdierne er foruddefinerede.

Algorithme

  1. Start
  2. Deklarer en matrix og initialiser den til 0.
  3. Kald en metode til at tælle den lige og ulige frekvens.
  4. Brug en for-løkke til at iterere over elementerne.
  5. Forøg det lige antal, hver gang et lige element støder på.
  6. Forøg det ulige antal, hver gang et ulige element støder på.
  7. Udskriv frekvensen for både de lige og ulige elementer i arrayet.
  8. Stop

Nedenfor er koden til det samme.

/*Java Program to find the trace and normal of a matrix*/
import java.io.*; 
  
public class Main 
{
    
    //To Find the normal of a matrix 
    public static void findNormal(int[][] arr) 
    { 
         double square = 0, result = 0;
        System.out.println("The Normal of the above matrix is "); 
   	for(int i = 0; i < arr.length; i++)
   	{
    	    for(int j = 0; j < arr[0].length; j++)
       	    {
       	        square = square + (arr[i][j])*(arr[i][j]);
            }
    	}
        result = Math.sqrt(square);
        System.out.println(result);
    } 
    
    //To Find the trace of a matrix 
    public static void findTrace(int[][] arr) 
    { 
        double sum = 0;
        System.out.println("The Trace of the above matrix is ");
  	for(int i = 0; i < arr.length; i++)
  	{  
    	    for(int j = 0; j < arr[0].length; j++)
       	    {
                if(i == j)
            	 {
               	     sum = sum + (arr[i][j]);
               	 }
            }
        }
        System.out.println(sum); 
         
    } 
    
    
      
    // Driver code 
    public static void main(String args[]) throws IOException 
    { 
        int arr[][] 
            = { { 2, 9, 8 }, { 7, 6, 4 }, { 3, 9, 2 } };  //Matrix Declaration and Initialization
       
       System.out.println("Original Matrix");
       for(int i = 0; i < arr.length; i++)
  	   {  
    	    for(int j = 0; j < arr[0].length; j++)
       	    {
                System.out.print(arr[i][j]+ " ");
            }
            System.out.println();
        }
        System.out.println();
        findTrace(arr);    //Find the Trace of the Matrix
        System.out.println();
        findNormal(arr);   //Find the Normal of the Matrix
           
    } 
} 


Original matrix
2 9 8
7 6 4
3 9 2
Sporet af ovenstående matrix er
10,0
Normalen for ovenstående matrix er
18.547236990991408


Java tag