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
- Start
- Deklarer variabler for matrixrækker og -kolonner.
- Bed brugeren om at initialisere matrixen.
- Deklarer matrixen.
- Bed brugeren om at initialisere matrixen.
- Udskriv den originale matrix...
- Deklarer to variable for at tælle de lige og ulige talfrekvenser.
- Initialiser disse variable til 0.
- Brug to til sløjfer til at iterere gennem elementerne.
- Brug den første for-løkke til at iterere gennem rækkerne.
- Brug den anden for-løkke til at iterere gennem kolonnerne.
- Tjek for hvert element.
- Forøg lige tællingsvariablen, hvis matrixelementet er lige.
- Forøg den ulige tællevariabel, hvis matrixelementet er ulige.
- Udskriv frekvensen for både de lige og ulige elementer i arrayet.
- 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
- Start
- Deklarer en matrix og initialiser den til 0.
- Kald en metode til at tælle den lige og ulige frekvens.
- Brug en for-løkke til at iterere over elementerne.
- Forøg det lige antal, hver gang et lige element støder på.
- Forøg det ulige antal, hver gang et ulige element støder på.
- Udskriv frekvensen for både de lige og ulige elementer i arrayet.
- 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