Programma Python per calcolare la somma della diagonale destra della matrice
Un linguaggio di programmazione generico molto apprezzato è Python. Viene applicato in una varietà di settori, tra cui applicazioni desktop, sviluppo web e apprendimento automatico. Fortunatamente, Python presenta una sintassi semplice e intuitiva per i principianti. Qui, nel nostro articolo utilizzeremo Python per calcolare la somma della diagonale destra della matrice.
Cos'è una matrice?
In matematica, usiamo una disposizione rettangolare o una matrice, che viene utilizzata per descrivere un oggetto matematico o un suo attributo. Si tratta di una matrice o tabella rettangolare contenente numeri, simboli o espressioni disposti in righe e colonne.
Ad esempio −
2 3 4 5
1 2 3 6
7 5 7 4
Quindi, questa è una matrice con 3 righe e 4 colonne, rappresentata come matrice 3*4.
Ora, ci sono due diagonali nella matrice, ovvero la diagonale primaria o principale e la diagonale secondaria. La diagonale primaria o principale è la diagonale che parte dall'angolo in alto a sinistra fino all'angolo in basso a destra e la diagonale secondaria che parte dall'angolo in basso a sinistra fino all'angolo in alto a destra.
Dall'esempio sopra vediamo che sia a00, a11 sono la diagonale principale (diagonale sinistra) sia a10, a01 è la matrice secondaria (diagonale destra), come mostrato di seguito
2 3 a00 a01
1 2 a10 a11
Somma della diagonale destra della matrice
Poiché abbiamo rivisto i concetti di base e abbiamo una comprensione completa della matrice e delle diagonali, approfondiamo ora l'argomento e completiamo la parte di codifica del concetto.
Per calcolare la somma prendiamo una matrice 2D. Considera una matrice 4*4 con elementi
Qui a00, a11, a22 e a33 sono gli elementi della diagonale primaria o principale della matrice. La diagonale secondaria o destra è composta dagli elementi a30, a21, a12 e a03.
C'è una condizione importante da considerare prima di completare questo compito: per estrarre la somma degli elementi presenti nella diagonale primaria, è necessario soddisfare la cosiddetta condizione riga-colonna che stabilisce che per ogni elemento in ogni riga deve esistere un numero di colonna equivalente.
Allo stesso modo, per calcolare la somma degli elementi sulla diagonale secondaria (a03, a12, a21 e a30), la sua condizione riga-colonna sarà uguale al numero di righe meno la colonna -1.
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
Utilizzo del ciclo For
In questo metodo utilizzeremo due cicli allo scopo, ovvero per le righe e le colonne e un ciclo interno per verificare la condizione che abbiamo fornito.
Algoritmo
Dai un valore che sia MAX.
Definire una funzione per la matrice.
Utilizzare il ciclo for per scorrere i numeri
-
Fornire la condizione per la diagonale destra della matrice.
Stampa il valore.
Esempio
Questo esempio definisce una costante MAX con il valore 50, quindi crea una funzione denominata SUM_RIGHT_MATRIX che accetta una matrice e un numero intero.
La funzione somma tutti i numeri sulla diagonale destra della matrice data (cioè dall'alto a destra verso il basso a sinistra) e stampa la somma.
MAX = 50
def SUM_RIGHT_MATRIX (matrix, m):
rightD = 0;
for i in range (0, m):
for j in range (0, m):
if ((i + j) == (m - 1)):
rightD += matrix[i][j]
print ("Sum of right diagonal is:", rightD)
T = [[ 13, 21, 33, 45 ],
[ 52, 16, 27, 28 ],
[ 17, 28, 31, 43 ],
[ 54, 26, 87, 28 ]]
SUM_RIGHT_MATRIX (T, 4)
Produzione
Eseguendo il programma sopra otteniamo "La somma della diagonale destra è: 155". Ciò significa che la somma totale di tutti i numeri nella diagonale destra è 155.
Sum of right diagonal is: 154
Utilizzando un ciclo singolo
In questo approccio la somma delle diagonali maggiore e secondaria viene calcolata utilizzando un singolo ciclo.
Algoritmo
Dai un valore che sia MAX.
Definire una funzione per la matrice.
Utilizzare il ciclo for per scorrere i numeri.
Fornire la condizione per la diagonale destra della matrice.
-
Stampa il valore.
Esempio
L'esempio seguente definisce una funzione chiamata sumofrightdiagonal, che accetta due parametri: una matrice e m.
Itera attraverso la matrice e somma ciascuno dei numeri sulla diagonale destra della matrice, memorizzandoli in una variabile chiamata right_diagonal.
Infine, stampa "La somma della diagonale destra è:" seguita dal valore memorizzato in right_diagonal. L'esempio include anche un input di esempio di T (una matrice 4x4) con m uguale a 4, in modo che quando Sumofrightdiagonal viene chiamato con questi valori come parametri, calcolerà e stamperà la somma di tutti gli elementi sulla diagonale destra di T.
MAX = 50
def sumofrightdiagonal (matrix, m):
right_diagonal = 0
for i in range (0, m):
right_diagonal += matrix [i] [m - i - 1]
print ("Sum of Right Diagonal is:", right_diagonal)
T = [[ 11, 12, 33, 24 ],
[ 54, 69, 72, 84 ],
[ 14, 22, 63, 34 ],
[ 53, 64, 79, 83 ]]
sumofrightdiagonal (T, 4)
Produzione
Sum of Right Diagonal: 171
Conclusione
In questo articolo, abbiamo discusso brevemente i due semplici metodi che utilizzano il programma Python per calcolare la somma della diagonale destra della matrice. Il primo metodo utilizza due cicli per completare l'attività fornitaci, mentre il secondo metodo ci fornisce un approccio efficiente per completare la stessa attività ma con un percorso più breve.