Heim > Backend-Entwicklung > C++ > C-Programm zur Überprüfung, ob die Matrix antisymmetrisch ist?

C-Programm zur Überprüfung, ob die Matrix antisymmetrisch ist?

WBOY
Freigeben: 2023-08-28 14:45:04
nach vorne
685 Leute haben es durchsucht

C-Programm zur Überprüfung, ob die Matrix antisymmetrisch ist?

Wenn die Elemente der quadratischen Matrix A aij=−aji für alle i und j erfüllen, dann wird die quadratische Matrix A als antisymmetrische Matrix bezeichnet. Mit anderen Worten, wenn die Transponierte von Matrix A gleich dem negativen Wert von Matrix A ist, also (AT=−A), dann wird Matrix A als antisymmetrische Matrix bezeichnet.

Beachten Sie, dass alle Hauptdiagonalelemente einer antisymmetrischen Matrix Null sind.

Nehmen wir ein Beispiel einer Matrix

A= |0 -5 4|
   |5 0 -1|
   |-4 1 0|
Nach dem Login kopieren

Dies ist eine schiefsymmetrische Matrix, da für alle i und j aij=−aji gilt. Zum Beispiel a12 = -5, a21 = 5, was a12 = −a21 bedeutet. Ebenso gilt diese Bedingung für alle anderen Werte von i und j.

Wir können auch überprüfen, ob die Transponierte von Matrix A gleich dem Negativ von Matrix A ist, d. h. AT=−A.

A<sup>T</sup>= |0 5 -4|
    |-5 0 1|
    |4 -1 0|
and
A= |0 -5 4|
   |5 0 -1|
   |-4 1 0|
Nach dem Login kopieren

Wir können deutlich erkennen, dass AT=−A ist, was A zu einer schiefsymmetrischen Matrix macht.

Input:
Enter the number of rows and columns: 2 2
Enter the matrix elements: 10 20 20 10
Output:
The matrix is symmetric.
10 20
20 10
Nach dem Login kopieren

Erklärung

Eine Matrix ist eine symmetrische Matrix, wenn sie gleich ihrer Transponierten ist.

Andernfalls ist die Matrix antisymmetrisch, wenn ihre Transponierte gleich ihrem Negativ ist. Ansonsten ist es weder symmetrisch noch antisymmetrisch. Die Ergebnisse werden entsprechend ausgedruckt.

Der Prozess zum Überprüfen der Symmetrie einer Matrix ist wie folgt:

  • Der Benutzer muss die Anzahl der Zeilen und Spalten der Matrix eingeben.

  • Benötigt die Elemente der Eingabematrix und speichert sie in „A“. Initialisieren Sie die Variablen „x“ und „y“ auf 0.

  • Wenn die Matrix nicht gleich ihrer Transponierten ist, weisen Sie der temporären Variablen „x“ den Wert 1 zu.

  • Andernfalls, wenn das Negativ der Matrix gleich ihrer Transponierten ist, weisen Sie der temporären Variablen „y“ den Wert 1 zu.

  • Wenn x gleich 0 ist, dann ist die Matrix symmetrisch. Andernfalls ist die Matrix antisymmetrisch, wenn y gleich 1 ist.

  • Wenn keine der oben genannten Bedingungen erfüllt ist, ist die Matrix weder symmetrisch noch antisymmetrisch.

  • Dann drucken Sie das Ergebnis aus.

Beispiel

#include<iostream>
using namespace std;
int main () {
   int A[10][10], i, j, m, n, x = 0, y = 0;
   cout << "Enter the number of rows and columns : ";
   cin >> m >> n;
   cout << "Enter the matrix elements : ";
   for (i = 0; i < m; i++)
      for (j = 0; j < n; j++)
   cin >> A[i][j];
   for (i = 0; i < m; i++) {
      for( j = 0; j < n; j++) {
         if (A[i][j] != A[j][i])
            x = 1;
         else if (A[i][j] == -A[j][i])
            y = 1;
      }
   }
   if (x == 0)
      cout << "The matrix is symmetric.</p><p> ";
   else if (y == 1)
      cout << "The matrix is skew symmetric.</p><p> ";
   else
      cout << "It is neither symmetric nor skew-symmetric.</p><p> ";
   for (i = 0; i < m; i++) {
      for (j = 0; j < n; j++)
         cout << A[i][j] << " ";
      cout << "</p><p> ";
   }
   return 0;
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonC-Programm zur Überprüfung, ob die Matrix antisymmetrisch ist?. 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