Heim > Java > javaLernprogramm > Ersetzen Sie in Java negative und positive Zahlen in der Matrix durch 0 und 1

Ersetzen Sie in Java negative und positive Zahlen in der Matrix durch 0 und 1

王林
Freigeben: 2023-08-29 08:29:08
nach vorne
1155 Leute haben es durchsucht

Ersetzen Sie in Java negative und positive Zahlen in der Matrix durch 0 und 1

In Java ist ein Array ein Objekt. Es handelt sich um einen nicht-primitiven Datentyp, der datenähnliche Werte speichert. Eine Matrix in Java ist nichts anderes als ein mehrdimensionales Array, das mehrere Zeilen und Spalten darstellt.

Hier erhalten wir eine Matrix, die eine Reihe von Elementen enthält, die positive und negative Zahlen umfassen, und gemäß der Problemstellung müssen wir negative Zahlen durch 0 und positive Zahlen durch 1 ersetzen.

Lassen Sie uns in diesen Artikel eintauchen und lernen, wie man es mit der Programmiersprache Java macht.

Zeigen Sie einige Beispiele

Beispiel 1

Gegebene Matrix =

-21 	22	-23
24	-25	26
-27	-28	29
Nach dem Login kopieren

Nachdem negative Zahlen durch 0 und positive Zahlen durch 1 ersetzt wurden,

Die resultierende Matrix ist –

0 	1	0
1	0	1
0	0	1
Nach dem Login kopieren

Beispiel 2

Gegebene Matrix =

-9 	2	-2	4
-1	-7	-2	6
2	-2	-4	3
-1	4	7	-8
Nach dem Login kopieren

Nachdem negative Zahlen durch 0 und positive Zahlen durch 1 ersetzt wurden,

Die resultierende Matrix ist –

0 	1	0	1
0	0	0	1
1	0	0	1
0	1	1	0
Nach dem Login kopieren

Beispiel 3

Gegebene Matrix =

-1 	-2	-3
4	5	6
-7	8	-9
Nach dem Login kopieren

Nachdem negative Zahlen durch 0 und positive Zahlen durch 1 ersetzt wurden,

Die resultierende Matrix ist: -

0 	0	0
1	1	1
0	1	0
Nach dem Login kopieren

Algorithmus

Algorithmus 1

  • Schritt 1 – Erstellen Sie eine 2D-Array-Matrix zum Speichern der Zahlen.

  • Schritt 2 – Rufen Sie die Methode „replaceNum“ auf, um negative Zahlen in der Matrix durch 0 und positive Zahlen durch 1 zu ersetzen.

  • Schritt-3 – Drucken Sie die Ergebnismatrix aus.

  • Schritt 4 – Iterieren Sie in der Methode „replaceNum“ die Zeilen und Spalten der Matrix mithilfe einer for-Schleife.

  • Schritt 5 – Verwenden Sie für jedes Element in der Matrix den ternären Operator, um die Zahl durch 0 oder 1 zu ersetzen, je nachdem, ob es eine negative oder eine positive Zahl ist.

    < /里>

Algorithmus 2

  • Schritt 1 – Erstellen Sie eine 2D-Array-Matrix zum Speichern der Zahlen.

  • Schritt 2 – Rufen Sie die Methode „replaceNum“ auf, um negative Zahlen in der Matrix durch 0 und positive Zahlen durch 1 zu ersetzen.

  • Schritt-3 – Drucken Sie die Ergebnismatrix aus.

  • Schritt 4 – Iterieren Sie in der Methode „replaceNum“ die Zeilen und Spalten der Matrix mithilfe einer for-Schleife.

  • Schritt 5 – Verwenden Sie für jedes Element in der Matrix die Math.signum-Methode, um das Vorzeichen der Zahl zu bestimmen (-1 bedeutet negativ, 0 bedeutet 0, 1 bedeutet positiv). Verwenden Sie dann eine if-else-Anweisung, um die Zahl durch 0 oder 1 zu ersetzen, je nachdem, ob sie negativ oder positiv ist

Grammatik

Um die Länge eines Arrays (die Anzahl der Elemente in diesem Array) zu ermitteln, verfügen Arrays über eine integrierte Eigenschaft, nämlich length

Hier ist die Syntax –

array.length
Nach dem Login kopieren

Unter diesen bezieht sich „Array“ auf die Array-Referenz.

Die Methode Math.signum() in Java ist eine mathematische Funktion, die das Vorzeichen eines bestimmten Doppel- oder Gleitkommawerts zurückgibt (-1 für negative Zahlen, 0 für 0, 1 für positive Zahlen).

Hier ist die Syntax –

Math.signum(mat[a][b]) == -1.0)
Nach dem Login kopieren

Wobei sich „mat“ auf die angegebene Matrix bezieht.

Mehrere Methoden

Wir bieten Lösungen auf unterschiedliche Weise.

  • Durch die Verwendung des ternären Operators

  • Durch Verwendung der Math.signum-Funktion

Schauen wir uns das Programm und seine Ausgabe einzeln an.

Methode 1: Verwenden Sie den ternären Operator

Bei dieser Methode werden die Matrixelemente im Programm initialisiert. Anschließend wird die benutzerdefinierte Methode aufgerufen, indem die Matrix als Argument übergeben wird und der ternäre Operator verwendet wird, um gemäß dem Algorithmus negative Zahlen durch 0 und positive Zahlen durch 1 zu ersetzen.

Beispiel

public class Main {
   public static void main(String[] args) {
      int[][] inputMatrix = {{-1, 2, -3},
         {4, -5, 6},
         {7, 8, -9}};
      
      // Call the User-defined method to replace negative and positive numbers
      replacenum(inputMatrix);
      
      // Print the resultant matrix
      for (int a = 0; a < inputMatrix.length; a++) {
         for (int b = 0; b < inputMatrix[a].length; b++) {
            System.out.print(inputMatrix[a][b] + " ");
         }
         System.out.println();
      }
   }
   
   // User-defined method to replace numbers 
   public static void replacenum(int[][] mat) {
      for (int a = 0; a < mat.length; a++) {
         for (int b = 0; b < mat[a].length; b++) {
            
            // Use a ternary operator to replace the number
            mat[a][b] = mat[a][b] < 0 ? 0 : 1;
         }
      }
   }
}
Nach dem Login kopieren

Ausgabe

0 1 0 
1 0 1 
1 1 0
Nach dem Login kopieren

Methode 2: Verwenden Sie die Math.signum-Funktion

Bei dieser Methode werden die Matrixelemente im Programm initialisiert. Die benutzerdefinierte Methode wird dann aufgerufen, indem die Matrix als Parameter übergeben wird und innerhalb der Methode mithilfe der Math.signum-Methode negative Zahlen durch 0 und positive Zahlen durch 1 gemäß dem Algorithmus ersetzt werden.

Beispiel

public class Main {
   public static void main(String[] args) {
      int[][] inputMatrix = {{-1, -2, 3},
         {4, -5, -6},
         {7, 8, 9}};
      
      // Call the User-defined method to replace negative and positive numbers
      replaceNum(inputMatrix);
      
      // Print the resultant matrix
      for (int a = 0; a < inputMatrix.length; a++) {
         for (int b = 0; b < inputMatrix[a].length; b++) {
            System.out.print(inputMatrix[a][b] + " ");
         }
         System.out.println();
      }
   }
   
   // User-defined method to replace numbers 
   public static void replaceNum(int[][] mat) {
      for (int a = 0; a < mat.length; a++) {
         for (int b = 0; b < mat[a].length; b++) {
            
            // Use an if-else statement with Math.signum method to replace the number
            if (Math.signum(mat[a][b]) == -1.0) {
               mat[a][b] = 0;
            } else {
               mat[a][b] = 1;
            }
         }
      }
   }
}
Nach dem Login kopieren

Ausgabe

0 0 1 
1 0 0 
1 1 1
Nach dem Login kopieren

In diesem Artikel haben wir verschiedene Möglichkeiten untersucht, negative Zahlen durch 0 und positive Zahlen durch 1 in einer Matrix mithilfe der Programmiersprache Java zu ersetzen.

Das obige ist der detaillierte Inhalt vonErsetzen Sie in Java negative und positive Zahlen in der Matrix durch 0 und 1. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage