Heim  >  Artikel  >  Backend-Entwicklung  >  Python-Programm zum Drucken einer Matrix im Schlangenmuster

Python-Programm zum Drucken einer Matrix im Schlangenmuster

WBOY
WBOYnach vorne
2023-08-20 10:49:09749Durchsuche

Python-Programm zum Drucken einer Matrix im Schlangenmuster

In diesem Artikel lernen wir ein Python-Programm zum Drucken einer Matrix im Schlangenmuster.

Angenommen, wir haben die n x n-Matrix verwendet. Wir werden die Eingabematrix nun mit den unten genannten Methoden in einem Schlangenmuster drucken.

Verwendete Methoden

Im Folgenden sind die verschiedenen Methoden aufgeführt, mit denen diese Aufgabe erfüllt wird −

  • Verschachtelte For-Schleifen verwenden

  • Umkehren alternativer Zeilen mithilfe von Slicing

Intuition

Wir werden alle Zeilen der Matrix durchlaufen. Für jede Zeile prüfen wir, ob sie gerade oder ungerade ist. Wenn die Zeilen gerade sind, wird die Matrix von links nach rechts gedruckt, andernfalls wird die Matrix von rechts nach links gedruckt.

Methode 1: Verwendung der verschachtelten for-Schleife

Algorithmus (Schritte)

Unten sind die Algorithmen/Schritte zum Ausführen der erforderlichen Aufgabe aufgeführt. −

  • Erstellen Sie eine Variable, um die Anzahl der Zeilen einer Matrix zu speichern.

  • Erstellen Sie eine weitere Variable, um die Anzahl der Spalten einer Matrix zu speichern.

  • Erstellen Sie eine Funktion printSnakePattern(), die die Matrix im Schlangenmuster druckt, indem Sie die Eingabematrix als Argument akzeptieren.

  • Verwenden Sie das Schlüsselwort global, um die Zeilen- und Spaltenvariablen global zu machen.

  • Verwenden Sie eine for-Schleife, um über die Zeilen der Matrix zu iterieren.

  • Verwenden Sie die Anweisung if bedingt, um zu prüfen, ob die aktuelle Zeilennummer eine gerade Zahl ist.

  • Verwenden Sie eine weitere verschachtelte for-Schleife, um alle Spalten der aktuellen Zeile zu durchlaufen, wenn die Bedingung wahr ist.

  • Drucken Sie die Matrixzeile von links nach rechts, wenn die aktuelle Zeile gerade ist.

  • Andernfalls, wenn die aktuelle Zeile ungerade ist, drucken Sie die Matrixzeilen von rechts nach links.

  • Erstellen Sie eine Variable zum Speichern der Eingabematrix und drucken Sie die angegebene Matrix aus.

  • Rufen Sie die oben definierte Funktion printSnakePattern() auf, indem Sie die Eingabematrix als Parameter verwenden.

Beispiel

Das folgende Programm druckt die Eingabematrix in einem Schlangenmuster unter Verwendung verschachtelter for-Schleifen:

# initializing the number of rows of the matrix
rows = 4
# initializing the number of columns of the matrix
columns = 4
# creating a function for printing the matrix in
# snake pattern accepting the input matrix as an argument.
def printSnakePattern(inputMatrix):
   # making the rows and columns variables global
      global rows, columns
      # traversing through the rows of a matrix
      for m in range(rows):
         # checking whether the current row number is even
         if m % 2 == 0:
            # traversing through all the columns of the current row
               for n in range(columns):
                  # printing from left to right if the current row is even
                  print(inputMatrix[m][n], end=" ")

         # Else, printing from right to left if the current row is even
         else:
            # traversing from the end of the columns
               for n in range(columns - 1, -1, -1):
                  print(inputMatrix[m][n], end=" ")
# input matrix
inputMatrix = [[3, 4, 5, 6],
               [10, 40, 60, 80],
               [1, 9, 7, 8],
               [40, 20, 14, 15]]
print("The Given Matrix is :")
print(inputMatrix)
# calling the above-defined printSnakePattern function
# by passing the input matrix as an argument.
print("Snake Pattern of the given Matrix is:")
printSnakePattern(inputMatrix)

Ausgabe

Bei der Ausführung generiert das obige Programm die folgende Ausgabe: −

The Given Matrix is :
[[3, 4, 5, 6], [10, 40, 60, 80], [1, 9, 7, 8], [40, 20, 14, 15]]
Snake Pattern of the given Matrix is:
3 4 5 6 80 60 40 10 1 9 7 8 15 14 20 40 

Methode 2: Abwechselnde Reihen mit Slices umkehren

Slicing ist eine häufige Praxis, die Programmierer am häufigsten verwenden, um Probleme effektiv zu lösen. Sie müssen eine Liste aufteilen, um auf eine Reihe von Listenelementen zuzugreifen Ein einfacher Slicing-Operator ist eine Methode, dies zu erreichen. Syntax

[start:stop:step]

Parameter

  • start

    − Index, wo man anfangen soll

  • Ende

    − Endindex

  • Schritt

    − Die Anzahl der Sprünge zwischen i, also die Schrittgröße

  • Beispiel

Das folgende Programm druckt die Eingabematrix mithilfe von Slicing in einem Schlangenmuster.

# input matrix
inputMatrix = [[3, 4, 5, 6],
               [10, 40, 60, 80],
               [1, 9, 7, 8],
               [40, 20, 14, 15]]
# initializing the number of rows of a matrix
rows = 4
# initializing the number of columns of a matrix
columns = 4
# creating a function for printing the matrix in
# snake pattern accepting the input matrix as an argument.
def printSnakePattern(inputMatrix):
   # making the rows and columns variables global
      global rows, columns
      # traversing through the rows of a matrix
      for m in range(rows):
         # checking whether the current row number is even
         if m % 2 != 0:
            # Reversing the row using reverse slicing
            inputMatrix[m] = inputMatrix[m][::-1]

      # traversing through the rows of a matrix
      for m in range(rows):
         # traversing through all the columns of the current row
         for n in range(columns):
            # printing the corresponding element
               print(inputMatrix[m][n], end=' ')
# input matrix
inputMatrix = [[3, 4, 5, 6],
               [10, 40, 60, 80],
               [1, 9, 7, 8],
               [40, 20, 14, 15]]
print("The Given Matrix is :")
print(inputMatrix)
# calling the above-defined printSnakePattern function
# by passing the input matrix as an argument.
print("Snake Pattern of the given Matrix is:")
printSnakePattern(inputMatrix)

Ausgabe

Bei der Ausführung generiert das obige Programm die folgende Ausgabe: −

The Given Matrix is :
[[3, 4, 5, 6], [10, 40, 60, 80], [1, 9, 7, 8], [40, 20, 14, 15]]
The Snake Pattern of the given Matrix is:
3 4 5 6 80 60 40 10 1 9 7 8 15 14 20 40 

Fazit

In diesem Artikel haben wir gelernt, wie man die gegebene Matrix mit zwei verschiedenen Methoden in Schlangenform ausgibt. Wir haben gelernt, wie man das Schlüsselwort global verwendet, um Variablen global zu machen, einschließlich einer Liste, eines Tupels und einer Zeichenfolge usw. durch umgekehrtes Schneiden.

Das obige ist der detaillierte Inhalt vonPython-Programm zum Drucken einer Matrix im Schlangenmuster. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen