Matrix Multiplication C ++

Matrix Multiplication C ++
Potresti aver imparato e fatto molte domande sulle matrici nelle tue materie matematiche durante lo studio. Matrix è una raccolta di righe e colonne. La matrice può avere il numero equivalente di righe e colonne ed essere diversa. Possiamo eseguire qualsiasi operazione matematica sulle matrici, i.e. aggiunta, sottrazione, moltiplicazione e divisione. C ++ ci consente anche di utilizzare le matrici nei nostri codici ed eseguire queste operazioni. Pertanto, abbiamo deciso di eseguire la moltiplicazione della matrice nella programmazione C ++ durante l'utilizzo di Ubuntu 20.04 Sistema Linux. Cominciamo con la creazione di nuovi file C ++ per aggiungere codice. Avvia prima il terminale di shell e usa l'istruzione "tocco" del terminale della shell per generare un file. Abbiamo chiamato questo file “Matrix.CC ". Il file è tenuto nella cartella domestica del nostro sistema Linux. Lo abbiamo aprendo nell'editor GNU Nano usando l'Editor Nano di Ubuntu, come dimostrato nell'immagine seguente. Il file vuoto verrà aperto direttamente nell'editor GNU Nano in soli 5 secondi.

Esempio # 01:

Iniziamo con l'esempio di base della moltiplicazione della matrice in C++. C ++ utilizza l'intestazione "iostream" per prendere input e output standard attraverso il flusso di input-output. Quindi, deve essere compreso anche nel file di codice. L'abbiamo incluso nel nostro file vuoto C ++ utilizzando la parola chiave "#include" in alto. All'interno di C ++, gli oggetti di input e output possono essere utilizzati solo con lo spazio dei nomi standard.

Quindi, dobbiamo utilizzare lo spazio dei nomi "std" usando la parola "usando" dopo l'intestazione. Faremo la nostra moltiplicazione della matrice all'interno del metodo C ++ main (), che è anche la fonte di esecuzione. Abbiamo dichiarato tre matrici "x", "y" e "z" con le dimensioni di 5-5, i.e. Righe*colonne. Ma abbiamo anche dichiarato variabili “R” e “C” come righe e colonne e assegnato entrambi con lo stesso valore. Attualmente, non ci sono valori nelle nostre matrici. Useremo la matrice "X" e "Y" come matrici di input, mentre la matrice "Z" sarà il prodotto di entrambe queste matrici. In primo luogo, dobbiamo aggiungere valori nella matrice di input "X" e "Y" usando i loop.

Le istruzioni Cout mostrano che l'utente inserirà separatamente i valori nelle matrici "x" e "y". Il ciclo "per" esterno verrà utilizzato per iterare le righe fino a "r" e il ciclo "per" esterno per iterare il valore della colonna "c". Poiché sia ​​"R" che "C" hanno il valore 2, quindi creeremo una matrice "X" e "Y" di 2*2. L'oggetto "CIN" è stato usato per aggiungere i valori nei loop "X" e "y" con i loop "io" e "j". Attraverso questo, l'utente aggiungerà valori di riga "2" e valori di colonna "2" nelle matrici dalla shell. Dopo aver inserito i valori in matrici "x" e "y", dobbiamo scoprire il prodotto di entrambe le matrici. In primo luogo, dobbiamo inizializzare tutte le righe e le colonne della matrice del prodotto "Z" a 0 su ogni iterazione usando sia "io" che "j" per i loop, i.e. r = 2 e c = 2.

Ad ogni iterazione, il ciclo "K" viene utilizzato per moltiplicare la matrice "x" con "y" e aggiungere questo valore del prodotto a un particolare indice di iterazione di matrice "z". Questo sarà continuato fino all'ultima riga di fila di Matrix "Z". Gli ultimi 2 loop "per" sono stati utilizzati per visualizzare la matrice "z" sulla shell tramite l'istruzione "cout" dell'oggetto. Dopo tutto ciò, l'ultima istruzione Cout viene utilizzata per aggiungere la riga finale. Il nostro programma è ora pronto per essere compilato sulla shell.

Il compilatore G ++ in Ubuntu 20.04 è stato usato per compilare il codice C ++ e il "./UN.la query out ”viene utilizzata per eseguire il codice compilato. Abbiamo aggiunto valori a 2 file e valori a 2 colonne per le matrici "x" e "y" durante l'esecuzione. Successivamente, la matrice del prodotto "Z" di entrambe le matrici "X" e "Y" è stata calcolata e visualizzata sulla shell l'ultimo.

Esempio # 02:

All'interno dell'esempio sopra, abbiamo calcolato la moltiplicazione della matrice per due stesse matrici, "x" e "y", con lo stesso ordine, i.e. Stesso numero di righe e colonne per entrambe le matrici. Ma conosci le regole del calcolo della moltiplicazione della matrice? Altrimenti? Allora questo esempio sarà il miglior aiuto per te. Devi sapere che non possiamo calcolare la moltiplicazione della matrice di due matrici con righe diverse nell'ordine di colonna. Per eseguire la moltiplicazione, il primo valore di riga della matrice deve essere uguale al secondo valore della colonna matrice, i.e. R1 = C2 o R2 = C1. Abbiamo aggiornato il valore della colonna "C" a 3. Ora, le righe e i valori della colonna per matrice "x" e "y" non sono gli stessi. Il prodotto non verrà calcolato come matrice "x" e "y" avrà 2 righe e 3 colonne, i.e. R1 non è uguale a C2 e R2 non è uguale a C1. Il codice rimanente sarà invariato e salvato per la compilation tramite Ctrl+S.

Abbiamo compilato questo codice matrice di riga di riga senza eguali e lo abbiamo eseguito finora. L'utente ha aggiunto valori per le matrici "x" e "y". Abbiamo ottenuto complicati risultati di moltiplicazione inaspettati di Matrix "X" e "Y". Questo output è impreciso perché non abbiamo usato lo stesso ordine richiesto per la moltiplicazione della matrice.

Per risolvere questa preoccupazione, dobbiamo utilizzare l'ordine R1 = C2 e C1 = R2 per le matrici di input nel nostro codice. Pertanto, abbiamo aperto lo stesso codice e modificato le righe e le colonne per la matrice "X" e "Y" insieme alle variabili "r = 3" e "c = 4". Salviamo questo codice aggiornato e compilialo.

Su compilazione ed esecuzione, abbiamo aggiunto input per Matrix “X” in ordine 3-ROW*4-COLUMN e 4-ROW*3-Column per Matrix “Y”. Abbiamo ottenuto la matrice del prodotto dell'ordine 3-ROW*4-colonna dopo la moltiplicazione di Matrix "X" e "Y".

Esempio # 03:

Diamo un'occhiata all'ultimo ma non meno importante esempio di moltiplicazione della matrice. Abbiamo inizializzato R1 = 3, C1 = 4, R2 = 4, C2 = 3, Matrix “X” e Matrix “Y” separatamente. La matrice del prodotto “M” è definita utilizzando R1 e C2. Abbiamo usato il ciclo "per" per visualizzare le matrici "x" e "y" già inizializzate sul nostro shell usando gli oggetti "cout". Come dimostrato nell'immagine allegata di seguito, questo è stato fatto separatamente per le matrici "X" e "Y" per eseguire la moltiplicazione della matrice.

Abbiamo calcolato il prodotto di entrambe le matrici e aggiunto il prodotto a Matrix "M". Alla fine, abbiamo visualizzato la matrice del prodotto "M" sulla shell usando l'istruzione oggetto "Cout".

Durante l'esecuzione del codice, siamo stati visualizzati prima con le matrici "X" e "Y" e poi la loro matrice del prodotto "M".

Conclusione:

Finalmente! Abbiamo completato la spiegazione del calcolo della moltiplicazione della matrice nel codice C ++ usando Ubuntu 20.04 Sistema. Abbiamo spiegato l'importanza delle righe nelle colonne in ordine di matrici per l'operazione di moltiplicazione. Pertanto, abbiamo iniziato da un semplice esempio di assunzione delle stesse matrici di ordine e siamo andati avanti con gli esempi di matrici di ordine diverse.