Liste di Liste Matrici
|
|
|
- Tito Grande
- 7 anni fa
- Просмотров:
Транскрипт
1 Liste di Liste Matrici
2 Una lista annidata è una lista che compare come elemento di un'altra lista. Nell'esempio seguente il quarto elemento della lista (elemento numero 3 dato che il primo ha indice 0) è una lista: >>> Lista = ["ciao", 2.0, 5, [10, 20]] Se stampiamo Lista[3] otteniamo [10, 20]. Per estrarre un elemento da una lista annidata possiamo procedere in due tempi: >>> Elemento = Lista[3] >>> Elemento[0] 10 O possiamo combinare i due passi in un'unica istruzione: >>> Lista[3][0] 10 L'operatore viene valutato da sinistra verso destra così questa espressione ricava il quarto elemento (indice 3) di Lista ed essendo questo una lista ne estrae il primo elemento (indice 0).
3 Excursus Matematico Le Matrici In matematica, una matrice è uno schieramento rettangolare di oggetti; le matrici di maggiore interesse sono costituite da numeri appartenenti ad un campo. Le matrici servono principalmente a descrivere valori che dipendono da due parametri, e per questo motivo sono ampiamente usate in matematica e in tutte le scienze
4 Excursus Matematico Le Matrici Le righe orizzontali di una matrice sono chiamate righe, mentre quelle verticali sono le colonne. Ad esempio, la matrice mostrata sopra ha due righe e tre colonne. In generale, una matrice è una matrice con m righe e n colonne, dove m e n sono interi positivi fissati. Una matrice generica è descritta solitamente indicando con a ij l'elemento posizionato alla riga i-esima e alla colonna j-esima. I vettori possono essere considerati matrici molto semplici, aventi una sola riga o una sola colonna. Più precisamente, una matrice con una sola riga, di dimensione, è detta vettore riga, mentre una matrice con una sola colonna, di dimensione, è detta vettore colonna. 4
5 Excursus Matematico Le Matrici Qui sotto sono mostrati in ordine una matrice, un vettore colonna ed un vettore riga Se la matrice si chiama A L'elemento posizionato nella riga i e nella colonna j può essere indicato in vari modi: ad esempio come A i,j, o tramite parentesi quadre A[i,j]. Si usa talvolta la notazione A = (a i,j ) per indicare che A è una matrice e che i suoi elementi sono denotati con a i,j. Gli elementi con i due indici di riga e di colonna uguali, cioè gli elementi della forma A i,i costituiscono la diagonale principale della matrice. 5
6 Excursus Matematico Le Matrici Somma Due matrici A e B possono essere sommate se hanno le stesse dimensioni. La loro somma A + B è definita come la matrice i cui elementi sono ottenuti sommando i corrispettivi elementi di A e B. Formalmente: (A + B) i,j : = A i,j + B i,j Per esempio
7 Excursus Matematico Le Matrici La moltiplicazione per uno scalare è un'operazione che, data una matrice A ed un numero c (detto scalare), costruisce una nuova matrice ca, il cui elemento è ottenuto moltiplicando l'elemento corrispondente di A per c (ca) ij : = ca i,j. Per esempio:
8 Excursus Matematico Le Matrici Prodotto riga per colonna La moltiplicazione tra due matrici A e B è un'operazione più complicata delle precedenti. A differenza della somma, non è definita sommando semplicemente gli elementi aventi lo stesso posto La definizione di moltiplicazione che segue è motivata dal fatto che una matrice modellizza una applicazione lineare, e in questo modo il prodotto di matrici corrisponde alla composizione di applicazioni lineari La moltiplicazione è definita soltanto se il numero di righe di B coincide con il numero n di colonne di A. Il risultato è una matrice con lo stesso numero di righe di A e lo stesso numero di colonne di B L elemento di posizione (i,j) è dato dalla somma
9 Excursus Matematico Le Matrici
10 Excursus Matematico Le Matrici Matrici quadrate Una matrice si dice quadrata se ha lo stesso numero di righe e colonne. Una matrice quadrata ha una diagonale principale, quella formata da tutti gli elementi a i,i con indici uguali. La somma di questi elementi è chiamata traccia. L'operazione di trasposizione trasforma una matrice quadrata A nella matrice A t ottenuta scambiando ogni a i,j con a j,i, in altre parole ribaltando la matrice intorno alla sua diagonale principale. Una matrice tale che a i,j = a j,i è una matrice simmetrica. In altre parole, A è simmetrica se A = A t. Se tutti gli elementi che non stanno nella diagonale principale sono nulli, la matrice è detta diagonale.
11 Le liste annidate sono spesso usate per rappresentare matrici. Per esempio la matrice può essere rappresentata come >>> Matrice = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] lista di tre elementi dove ciascuno è una riga della matrice. >>> Matrice[1] [4, 5, 6] O estrarre una singola cella usando il doppio indice: >>> Matrice[1][1] 5 Il primo indice seleziona la riga ed il secondo la colonna. 11
12 Riempire una matrice di 0 e visualizzare la matrice numerorighe=3 numerocolonne=4 m=[] #lista vuota for i in range(numerorighe): n=[] for j in range(numerocolonne): n.append(0) m.append(n) print("m: ", m) 12
13 Con numeri inseriti dall utente numerorighe=3 numerocolonne=4 m=[] for i in range(numerorighe): n=[] for j in range(numerocolonne): x=int(input("inserire elemento ("+str(i)+","+str(j)+")\n")) n.append(x) m.append(n) print("m: ", m) 13
14 dimensione=4 m=[[1,2,3,4],[2,3,5,0],[3,5,6,8],[4,0,8,0]] simmetrica="simmetrica" for i in range(dimensione): for j in range(dimensione): if m[i][j]!=m[j][i]: simmetrica="non simmetrica" for i in range(dimensione): print(str(m[i])) print(simmetrica) 14
15 dimensione=4 m=[[1,7,3,4],[2,3,5,0],[3,5,6,8],[4,0,8,0]] simmetrica="simmetrica" for i in range(dimensione): for j in range(dimensione): if m[i][j]!=m[j][i]: simmetrica="non simmetrica" for i in range(dimensione): print(str(m[i])) print(simmetrica) è corretto? si può migliorare? 15
16 dimensione=4 m=[[1,7,3,4],[2,3,5,0],[3,5,6,8],[4,0,8,0]] simmetrica="simmetrica" for i in range(dimensione): for j in range(i): if m[i][j]!=m[j][i]: simmetrica="non simmetrica" for i in range(dimensione): print(str(m[i])) print(simmetrica) Ora? 16
17 Esercizi su Matrici 17
18 Somma di matrici c[i][j] = a[i][j] + b[i][j] =
19 Esercizio Scrivere un programma che chiede all utente di riempire una matrice, la stampa, cerca, se esiste, la prima occorrenza dello 0 e dice in che posizione è stata trovata 19
20 Esercizio Scrivere un programma che chiede all utente di riempire una matrice, la stampa, cerca, se esiste, la prima occorrenza dello 0, l ultima occorrenza dello 0 e l occorrenza dello 0 in posizione mediana e dice in che posizione sono state trovate. 20
21 Esercizio Scrivere un programma che riempia una matrice 20x30 chiedendo all utente di inserire gli elementi, ma inserendo nella matrice solo gli elementi pari. Il programma termina quando la matrice è piena. 21
22 Esercizio Scrivere un programma che legge una sequenza di numeri interi e li mette nella prima riga della matrice M. La lettura della sequenza termina quando alla prima riga della matrice M sono stati assegnati 50 interi oppure quando viene letto il secondo numero intero negativo. 22
23 Esercizio Scrivere un programma che chiede all utente di inserire una matrice 20x30, poi (dopo aver terminato la fase di inserimento) copia gli elementi dispari in una seconda matrice 20x30 senza lasciare buchi, se non in fondo. Gli elementi in fondo (i "buchi") siano messi a zero. 23
24 Esercizio Scrivere un programma che chiede all utente di inserire una matrice NxN con elementi tutti diversi. Se l utente inserisce un numero già inserito il programma lo avvisa dell errore e chiede nuovamente di inserire l elemento. 24
25 Esercizio Si scriva un programma che chiede all utente di riempire una matrice, un intero len (che deve essere un intero positivo maggiore di 1) e stampa OK se in m è presente almeno una sequenza orizzontale, verticale o diagonale, di lunghezza len, di elementi che crescono o diminuiscono linearmente (cioè in cui la differenza tra due elementi successivi è costante). Esempi di sequenze lineari: (lunghezza 4, differenza costante 1) (lunghezza 4, differenza constante -1) (lunghezza 7, differenza costante 0) Sono ammesse anche sequenze di lunghezza 1 (che è considerata sempre lineare) 25
26 Esercizio Una matrice quadrata Mat di dimensioni NxN (con N costante predefinita) è diagonalmente dominante se la somma dei valori assoluti degli elementi su ciascuna riga, escluso l'elemento sulla diagonale principale, è minore del valore assoluto dell'elemento corrispondente sulla diagonale principale. Scrivere un programma che chiede all utente di inserire i valori di una matrice e stampa «Dominante» se la matrice è diagonalmente dominante, «Non dominante» altrimenti. Si ricorda che la funzione abs(n) restituisce il valore assoluto dell n ricevuto come parametro. 26
27 Esercizio Considerata una matrice A di N x M interi, definiamo claque una sottomatrice 2 x 2 in cui la somma algebrica dei valori di una diagonale sia pari a quella dell altra diagonale. In figura sono evidenziate le claque. Si scriva un programma che acquisisce una matrice N x M stampa il numero di claque della matrice. 27
28 Esercizio Si scriva un programma che stampi sullo standard output il contenuto di un quadrato magico di dimensione n, con n dispari. Un quadrato magico di ordine n contiene i primi n numeri naturali ( 1, 2, 3,., n 2 ) disposti in modo tale che la somma dei numeri su ogni riga, su ogni colonna e sulle due diagonali principali sia sempre la stessa. Es: n = Esiste una regola molto semplice per percorrere la matrice disponendo i numeri interi in ordine crescente. Partendo col posizionare un 1 nella posizione centrale sull ultima riga, si percorre la matrice incrementando di una unità il numero di riga e il numero di colonna dell elemento attuale, avendo cura di considerare i bordi opposti della matrice come adiacenti. Se durante questa operazione si individua una cella vuota si scrive il numero successivo; altrimenti, il numero successivo, viene posizionato nella cella avente riga immediatamente superiore a quella dell ultimo numero inserito. 28
29 Prodotto di matrici * c[1][2] = (a[1][k]*b[k][2]), con k = 0,...,
30 Esercizio Si scriva un programma che chiede all utente di riempire una matrice NxN (con N costante globale predefinita) di interi e stampa la lunghezza della sequenza più lunga orizzontale, verticale o diagonale di numeri uguali consecutivi. 30
31 Esempio (con matrice 5 per 5, per semplicità): se len è 4, la funzione deve restituire 0, perché non c'è nessuna sequenza lineare di lunghezza 4, se len è 3, la funzione restituisce 1, perché è presente la sequenza orizzontale 7 5 3, con differenza costante -2 31
32 Esercizio Si realizzi un programma che, data una matrice NxM di interi, trovi l elemento per cui la media degli elementi ad esso adiacenti sia massima. Si stampino le coordinate di tale elemento ed il suo valore. Si considerino come adiacenti a ciascun elemento i quattro elementi nelle quattro direzioni cardinali. Si tratti inoltre l ultima colonna come adiacente alla prima, e l ultima riga come adiacente alla prima. Si supponga che N ed M possano variare tra 1 e 100. I valori di N ed M, così come i valori degli elementi della matrice, vengono acquisiti da tastiera. 32
33 Esercizio Scrivere un programma che chiede all utente di inserire una matrice NxN e stampa gli elementi di tale matrice secondo un ordinamento a spirale, partendo dalla cornice più esterna e procedendo verso l interno. 33
34 Prodotto di Kronecker Se A una matrice m n e B una matrice p q, allora il loro prodotto di Kronecker A x B è una matrice mxp nxq definita a blocchi nel modo seguente: 34
( ) TEORIA DELLE MATRICI. A. Scimone a.s pag 1
. Scimone a.s 1997 98 pag 1 TEORI DELLE MTRICI Dato un campo K, definiamo matrice ad elementi in K di tipo (m, n) un insieme di numeri ordinati secondo righe e colonne in una tabella rettangolare del tipo
= elemento che compare nella seconda riga e quinta colonna = -4 In generale una matrice A di m righe e n colonne si denota con
Definizione di matrice Una matrice (di numeri reali) è una tabella di m x n numeri disposti su m righe e n colonne. I numeri che compaiono nella tabella si dicono elementi della matrice. La loro individuazione
Parte 1: tipi primitivi e istruzioni C
Parte 1: tipi primitivi e istruzioni C Esercizio 1 Scrivere un programma che stampa la somma di una sequenza di N numeri inseriti dall utente. Esercizio 2 Scrivere un programma che stampa la somma di una
Le matrici. Sia K un campo con elemento neutro dell addizione 0 ed elemento neutro della moltiplicazione 1.
Le matrici Sia K un campo con elemento neutro dell addizione 0 ed elemento neutro della moltiplicazione 1. Siano m, n N\{0}. Una matrice m n a coefficienti in K è una tabella di m n elementi di K disposti
Esercizi
Esercizi Si implementi una funzione che riceve in input una matrice NxM di float. Definito picco un numero circondato in tutte le posizioni intorno solo da numeri strettamente inferiori alla sua metà,
LABORATORIO DI INFORMATICA ESERCITAZIONE VIII
LABORATORIO DI INFORMATICA ESERCITAZIONE VIII Cercate di eseguire gli esercizi da soli. Se non ci riuscite, cercate di capire i messaggi di errore. Se non ci riuscite, provateci di nuovo. Poi chiamate
Introduzione all algebra delle matrici. Appunti a cura di Lara Ercoli
Introduzione all algebra delle matrici ppunti a cura di Lara Ercoli Indice Definizioni 3. Matrici particolari............................ 4 2 Operazioni con le matrici 8 2. Somma di matrici.............................
Numeri interi relativi
Numeri interi relativi 2 2.1 I numeri che precedono lo zero Con i numeri naturali non sempre è possibile eseguire l operazione di sottrazione. In particolare, non è possibile sottrarre un numero più grande
I.T.I.S L. Da Vinci G. Galilei Progetto: Diritti a Scuola - Matematica - Anno 2016
Si ringrazia il gentilissimo Prof. Nicola Filipponio per la sua disponibilità, per aver tenuto delle brillanti lezioni presso il nostro istituto e per l utilizzo del suo materiale relativo alla costruzione
Esercizi svolti. delle matrici
Esercizi svolti. astratti. Si dica se l insieme delle coppie reali (x, y) soddisfacenti alla relazione x + y è un sottospazio vettoriale di R La risposta è sì, perchè l unica coppia reale che soddisfa
Laboratorio di Architettura degli Elaboratori A.A. 2014/15 Programmazione Assembly
Laboratorio di Architettura degli Elaboratori A.A. 2014/15 Programmazione Assembly Scrivere il codice ARM che implementi le specifiche richieste e quindi verificarne il comportamento usando il simulatore
Corso di Matematica e Statistica 3 Algebra delle matrici. Una tabella rettangolare: la matrice. Una tabella rettangolare: la matrice
Pordenone Corso di Matematica e Statistica 3 Algebra delle UNIVERSITAS STUDIORUM UTINENSIS Giorgio T. Bagni Facoltà di Scienze della Formazione Dipartimento di Matematica e Informatica Università di Udine
Elementi di Algebra Lineare Matrici e Sistemi di Equazioni Lineari
Elementi di Algebra Lineare Matrici e Sistemi di Equazioni Lineari Antonio Lanteri e Cristina Turrini UNIMI - 2016/2017 Antonio Lanteri e Cristina Turrini (UNIMI - 2016/2017 Elementi di Algebra Lineare
Il teorema di Rouché-Capelli
Luciano Battaia Questi appunti (1), ad uso degli studenti del corso di Matematica (A-La) del corso di laurea in Commercio Estero dell Università Ca Foscari di Venezia, campus di Treviso, contengono un
Determinanti. Definizione ed esempi. Definizione ed esempi. Proprietà dei determinanti Rango di matrici
Introduzione S S S Rango di matrici Si dice sottomatrice d'una matrice data la matrice ottenuta selezionando un certo numero di righe e di colonne della matrice iniziale. Lezione 24.wpd 08/01/2011 XXIV
Matrici. Prof. Walter Pugliese
Matrici Prof. Walter Pugliese Le matrici Una matrice è un insieme di numeri reali organizzati in righe e colonne. Se n è il numero delle righe e m e il numero delle colonne si dice che la matrice è di
Problema. Vettori e matrici. Vettori. Vettori
e matrici Ver. 2.4 2010 - Claudio Fornaro - Corso di programmazione in C Problema Si vuole un programma che chieda 10 numeri dalla tastiera e li visualizzi dall ultimo al primo Soluzione attuale (con le
Laboratorio di Python
Laboratorio di Python Matrici con Liste Lab09 5 Aprile 2017 Outline Correzione esercizi per oggi Matrici Teoria Esercizi Esercizi per casa Esercizio 1 per casa Scrivere una funzione che verifica se una
Linguaggio C++ 8. Matrici
2009-2010 Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) Linguaggio C++ 8 Matrici Linguaggio C++ 8 1 Array a più dimensioni. Sintassi generale : tipo nome [dimensione 1][dimensione
Note per il corso di Geometria Corso di laurea in Ing. Edile/Architettura. 4 Sistemi lineari. Metodo di eliminazione di Gauss Jordan
Note per il corso di Geometria 2006-07 Corso di laurea in Ing. Edile/Architettura Sistemi lineari. Metodo di eliminazione di Gauss Jordan.1 Operazioni elementari Abbiamo visto che un sistema di m equazioni
Array Tipi di dato semplici e strutturati strutturati array elementi omogenei numero d ordine indice lunghezza dimensione
Array Tipi di dato semplici e strutturati i tipi di dato visti finora erano tutti semplici: int, char, float,... i dati manipolati sono spesso complessi (o strutturati) con componenti elementari o strutturate
Esercitazioni di Algebra e Geometria
Esercitazioni di Algebra e Geometria Anno Accademico 2011 2012 Dott.ssa Elisa Pelizzari e-mail [email protected] Esercitazioni: lunedì 14.30 16.30 venerdì 14.30 16.30 Ricevimento studenti: venerdì 13.00
3. Matrici e algebra lineare in MATLAB
3. Matrici e algebra lineare in MATLAB Riferimenti bibliografici Getting Started with MATLAB, Version 7, The MathWorks, www.mathworks.com (Capitolo 2) Mathematics, Version 7, The MathWorks, www.mathworks.com
1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso
Domanda 1 1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso x n+1 = x n f(x n), n = 0, 1, 2,... K dove x 0 è il punto iniziale, f(x) = x 3 cos(x) e K è una costante assegnata.
Multidimensionali. Array Multidimensionali. Tipi di array. Matrice: array bidimensionale. Array multidimensionale. Dichiarazione di una matrice
Tipi di array Array Multidimensionali Antonella Santone Monodimensionali (vettore) Multidimensionali Array multidimensionale Un array multidimensionale è un array, i cui elementi sono a loro volta degli
APPUNTI SULLA DIAGONALIZZAZIONE Corso Prof. F.Podestà, a.a
APPUNTI SULLA DIAGONALIZZAZIONE Corso Prof FPodestà, aa 003-004 Sia V uno spazio vettoriale e sia f : V V una applicazione lineare una tale applicazione da uno spazio vettoriale in se stesso è chiamata
TEMPUS PECUNIA EST COLLANA DI MATEMATICA PER LE SCIENZE ECONOMICHE FINANZIARIE E AZIENDALI
TEMPUS PECUNIA EST COLLANA DI MATEMATICA PER LE SCIENZE ECONOMICHE FINANZIARIE E AZIENDALI 2 Direttore Beatrice VENTURI Università degli Studi di Cagliari Comitato scientifico Umberto NERI University of
MATRICI E VETTORI APPROFONDIMENTO PER IL CORSO DI LABORATORIO DI INFORMATICA SARA POLTRONIERI
MATRICI E VETTORI APPROFONDIMENTO PER IL CORSO DI LABORATORIO DI INFORMATICA SARA POLTRONIERI LE MATRICI DEFINIZIONE: Una matrice è un insieme di numeri disposti su righe e colonne. 1 3 7 M = 2 5 1 M è
Esercitazioni di Algebra e Geometria
Esercitazioni di Algebra e Geometria Anno Accademico 2010 2011 Dott.ssa Elisa Pelizzari e-mail [email protected] Esercitazioni: lunedì 14.30 16.30 venerdì 14.30 16.30 Ricevimento studenti: venerdì 13.30
ALGEBRA LINEARE PARTE II
DIEM sez. Matematica Finanziaria Marina Resta Università degli studi di Genova Dicembre 005 Indice PREMESSA INVERSA DI UNA MATRICE DETERMINANTE. DETERMINANTE DI MATRICI ELEMENTARI................. MATRICI
Capitolo 8 Forme quadratiche e loro applicazioni Esercizi svolti Tutorato di geometria e algebra lineare. Marco Robutti
Capitolo 8 Forme quadratiche e loro applicazioni Esercizi svolti Tutorato di geometria e algebra lineare Marco Robutti 5 Ottobre 2017 1 Introduzione Gli esercizi di questo capitolo riguardano i seguenti
Operazioni sui vettori
Operazioni sui vettori Vettore Un vettore v è un insieme ordinato di elementi. Per esempio, il seguente è un vettore di 3 elementi: Gli elementi di un vettore si indicano solitamente con i seguenti simboli:
Corso di Matematica Generale M-Z Dipartimento di Economia Universitá degli Studi di Foggia ALGEBRA LINEARE. Giovanni Villani
Corso di Matematica Generale M-Z Dipartimento di Economia Universitá degli Studi di Foggia ALGEBRA LINEARE Giovanni Villani Matrici Definizione 1 Si definisce matrice di tipo m n una funzione che associa
n deve essere maggiore di 0, altrimenti il metodo restituisce null.
Esercizio 1 di classe Intersezione che presi in input due Array di int A e B, restituisce in output un array contenente gli elementi presenti sia in A che in B. Esercizio 2 di classe identità che prende
Anno 4 Matrice inversa
Anno 4 Matrice inversa 1 Introduzione In questa lezione parleremo della matrice inversa di una matrice quadrata: definizione metodo per individuarla Al termine della lezione sarai in grado di: descrivere
Esempio: quanto mi piace questo corso! qufuafantofo mifi pifiafacefe qufuefestofo coforsofo!
Esercizio 1 Scrivere un programma che acquisisca da tastiera una sequenza di caratteri terminata da! e riporti sul monitor una sequenza derivata dalla precedente secondo le regole dell alfabeto farfallino
UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Matlab: esempi ed esercizi
UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA Matlab: esempi ed esercizi Sommario e obiettivi Sommario Esempi di implementazioni Matlab di semplici algoritmi Analisi di codici Matlab Obiettivi
CORSO DI ALGEBRA LINEARE Anno Accademico 2004/2005 Appunti su SISTEMI di EQUAZIONI LINEARI
CORSO DI ALGEBRA LINEARE Anno Accademico 2004/2005 Appunti su SISTEMI di EQUAZIONI LINEARI Lo studente ha forse già incontrato i sistemi di equazioni lineari alla scuola secondaria Con il termine equazione
Inversa di una matrice quadrata. L operatore inv() inverte una matrice quadrata non singolare (cioè in cui il determinate è diverso da zero).
Inversa di una matrice quadrata L operatore inv() inverte una matrice quadrata non singolare (cioè in cui il determinate è diverso da zero). richiami di algebra lineare TRASPOSIZIONE DI MATRICE Il calcolo
AL220 - Gruppi, Anelli e Campi
AL220 - Gruppi, Anelli e Campi Prof. Stefania Gabelli - a.a. 2013-2014 Settimana 1 - Traccia delle Lezioni Funzioni tra insiemi Ricordiamo che una funzione o applicazione di insiemi f : A B è una corrispondenza
ALGEBRA LINEARE PARTE III
DIEM sez Matematica Finanziaria Università degli studi di Genova Dicembre 200 Indice PREMESSA 2 GENERALITA 2 RAPPRESENTAZIONE DI UN SISTEMA LINEARE IN FORMA MATRI- CIALE 2 3 SOLUZIONE DI SISTEMI LINEARI
