Heim > Backend-Entwicklung > Python-Tutorial > Python-Programm zur Berechnung der Summe der linken Diagonalen einer Matrix

Python-Programm zur Berechnung der Summe der linken Diagonalen einer Matrix

王林
Freigeben: 2023-09-17 23:33:05
nach vorne
1480 Leute haben es durchsucht

Python-Programm zur Berechnung der Summe der linken Diagonalen einer Matrix

Python ist eine beliebte Allzweck-Programmiersprache, die in einer Vielzahl von Branchen verwendet wird, von Desktop-Anwendungen bis hin zu Webentwicklung und maschinellem Lernen.

Aufgrund seiner einfachen Syntax ist es ideal für Anfänger, die mit dem Programmieren beginnen. In diesem Artikel lernen wir, wie man mit Python „die Summe der linken diagonalen Elemente einer Matrix“ berechnet.

Matrix

In der Mathematik verwenden wir rechteckige Arrays oder Matrizen, um mathematische Objekte oder Eigenschaften mathematischer Objekte zu beschreiben. Dabei handelt es sich um rechteckige Arrays oder Tabellen, die in Zeilen und Spalten angeordnete Zahlen, Symbole oder Ausdrücke enthalten.

Beispiel

2 3 4 5
1 2 3 6
7 5 7 4
Nach dem Login kopieren

Das ist also eine Matrix aus 3 Zeilen und 4 Spalten. Und ausgedrückt als 3*4-Matrix.

  • In der Matrix gibt es zwei Diagonalen, nämlich die Hauptdiagonale und die Nebendiagonale.

  • Die Hauptdiagonale ist die diagonale Linie von der oberen linken Ecke zur unteren rechten Ecke und die Nebendiagonale ist die diagonale Linie von der unteren linken Ecke zur oberen rechten Ecke.

Aus dem gegebenen Beispiel -

2 3        a00 a01
1 2        a10 a11
Nach dem Login kopieren

Hier sind a

00 und a11 alle Hauptdiagonalen und a10 und a01 sind Hauptdiagonalen-Sekundärmatrizen.

Summe der linken Diagonale der Matrix

Da wir uns nun mit den Grundlagen befasst haben und über ein umfassendes Verständnis von Matrizen und Diagonalen verfügen, wollen wir tiefer in das Thema eintauchen und den Codierungsaspekt vervollständigen.

Um die Summe zu berechnen, nehmen wir eine 2D-Matrix. Betrachten Sie eine 4*4-Matrix, deren Elemente wie folgt sind -

2 4 6 8       a00 a01 a02 a03
3 5 7 9       a10 a11 a12 a13
1 4 6 7       a20 a21 a22 a23
3 5 1 4       a30 a31 a32 a33
Nach dem Login kopieren

  • Hier sind

    a00,a11,a22,a33 Primär- oder Primärmatrizen, es gibt eine Bedingung vor Abschluss der Aufgabe. Lassen Sie uns die Bedingungen zweier Diagonalen verstehen.

  • Um die Summe der in der Hauptdiagonalen einer Matrix vorhandenen Elemente zu ermitteln, sollte diese die Zeilen-Spalten-Bedingung erfüllen, die angibt, dass für die Summe der Elemente die Elemente Zeile = Spalte sein müssen.

  • Für die Unterdiagonale lautet die Zeilen- und Spaltenbedingung für die Elemente

    a03, a12, a21, a30 Anzahl der Zeilen – Anzahl der Spalten – 1.

For-Schleife verwenden

In dieser Methode verwenden wir zwei Schleifen, um dies zu erreichen, eine Schleife für Zeilen und Spalten und eine innere Schleife, um die von uns bereitgestellte Bedingung zu überprüfen.

Algorithmus

  • Gibt einen MAX-Wert.

  • Funktionen, die Matrizen definieren.

  • Verwenden Sie eine for-Schleife, um über Zahlen zu iterieren.

  • Geben Sie Bedingungen für die linke Diagonale der Matrix an.

  • Drucken Sie den Wert aus.

Beispiel

Das folgende Beispiel dient der Berechnung der Summe der linken Diagonalelemente in einer 4 x 4-Matrix. Die for-Schleife durchläuft jede Zeile und Spalte der Matrix, und wenn sie gleich sind (d. h. auf der linken Diagonale), wird das Element zu einer Variablen namens „leftmatrix“ hinzugefügt.

max = 50
def sumleftmatrix(matrix, m):
   leftmatrix = 0
   for i in range(0, m):
      for j in range(0, m):
         if (i == j):
            leftmatrix += matrix[i][j]
   print("Sum of left diagonal of the matrix:", leftmatrix)
A = [[ 10, 22, 13, 84 ],
   [ 52, 63, 97, 82 ],
   [ 11, 32, 23, 14 ],
   [ 55, 63, 72, 83 ]]
sumleftmatrix(A, 4)
Nach dem Login kopieren

Ausgabe

Bei dieser Methode definieren wir einfach eine Funktion und erstellen mithilfe einer for-Schleife einen Bereich für Zeilen und Spalten. Fügen Sie eine Bedingung für Elemente hinzu, die in der linken Diagonale vorhanden sind.

Zeitkomplexität− O(N*N), weil wir verschachtelte Schleifen verwenden, um N*N-mal zu prüfen.

Da wir keinen zusätzlichen Platz verbrauchen, beträgt die Komplexität des Hilfsraums O(1).

Sum of left diagonal of the matrix: 179
Nach dem Login kopieren

Verwenden Sie eine einzelne Schleife

Bei dieser Methode kann eine einzelne Schleife verwendet werden, um die Summe der Primär- und Sekundärdiagonalen zu berechnen.

Algorithmus

  • Gibt einen MAX-Wert.

  • Funktionen, die Matrizen definieren.

  • Verwenden Sie eine for-Schleife, um über Zahlen zu iterieren.

  • Geben Sie Bedingungen für die linke Diagonale der Matrix an.

  • Drucken Sie den Wert aus.

Beispiel

Das folgende Beispiel definiert eine Funktion namens sumofleftdiagonal, die zwei Parameter akzeptiert: Matrix und m.

  • Der erste Parameter Matrix ist ein zweidimensionales Array, und der zweite Parameter m repräsentiert die Größe des zweidimensionalen Arrays.

  • In dieser Funktion gibt es eine Variable namens left_diagonal, die zum Speichern der Summe aller Elemente auf der linken Diagonale der Matrix verwendet wird

  • Dann durchläuft die for-Schleife jedes Element im Bereich von 0 bis m (Größe) und fügt die Werte in

    left_diagonal hinzu.

  • Schließlich gibt die Ausgabeanweisung „

    Sum of Left Diagonal is:“ aus, gefolgt vom in left_diagonal gespeicherten Inhalt. Beispiel gegeben, bei dem MAX auf 50 eingestellt ist und T ein weiteres 4x4-Array ist

  • MAX = 50
    def sumofleftdiagonal (matrix, m):
       left_diagonal = 0
       for i in range(0, m):
          left_diagonal += matrix[i][i]
       print("Sum of Left Diagonal is:", left_diagonal)
    T = [[ 11, 12, 33, 24 ],
       [ 54, 69, 72, 84 ],
       [ 14, 22, 63, 34 ],
       [ 53, 64, 79, 83 ]]
    sumofleftdiagonal (T, 4)
    
    Nach dem Login kopieren
Ausgabe

Die zeitliche Komplexität beträgt O(N), da eine Schleife zum Durchlaufen von N Elementen erforderlich ist. Da kein zusätzlicher Platz verbraucht wird, beträgt die Komplexität des Hilfsraums O(1).

Sum of Left Diagonal is: 226
Nach dem Login kopieren
Fazit

In diesem Artikel haben wir kurz zwei einfache Möglichkeiten besprochen, die Summe der linken Diagonalen einer Matrix mithilfe von Python-Programmen zu berechnen. Die erste Methode verwendet zwei Schleifen, um die uns gestellte Aufgabe zu erfüllen, während die zweite Methode uns eine effiziente Möglichkeit bietet, dieselbe Aufgabe auf einem kürzeren Weg zu erledigen.

Das obige ist der detaillierte Inhalt vonPython-Programm zur Berechnung der Summe der linken Diagonalen einer Matrix. 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