



Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
tanti esercizi su liste, stringhe per allenarsi per l'esame di fondamenti d'informatica- python
Tipologia: Esercizi
1 / 6
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!




1- Definire una funzione che legga da tastiera una sequenza di numeri interi finché non viene inserita dall’utente la stringa “ STOP”. Al termine della lettura la funzione restituisce una lista contenente gli interi letti. 2- Definire una funzione che riceva in input una lista e un oggetto x. La funzione deve restituire True se l’elemento x è presenta nella lista, False altrimenti. 3- Definire una funzione che riceva in input una lista e un oggetto x. La funzione deve restituire il primo indice in corrispondenza del quale è presente x all’interno della lista. La funzione restituisce -1 qualora x non sia presente nella lista. 4- Scrivere una funzione verifica_multipli(lista) che riceva una lista di numeri e restituisca True se tutti gli elementi sono pari e positivi oppure multipli di 5. 5- Definire una funzione che riceva in input una lista di interi e restituisca il valore minimo in essa contenuto. 6- Definire una funzione che riceva in input una lista di interi e restituisca il valore massimo in essa contenuto. 7- Definire una funzione che riceva in input una lista di interi e restituisca la somma degli elementi in essa contenuti. 8- Definire una funzione che riceva in input una lista di interi e restituisca la media aritmetica dei valori in essa contenuti. 9- Definire una funzione che riceva in input una lista di interi e restituisca la media geometrica dei valori in essa contenuti. Si ricordi che: 10-Definire una funzione che riceva in input una lista di interi e restituisca la media armonica dei valori in essa contenuti. Si ricordi che: 11-Definire una funzione i cui parametri di input siano l ed x. La funzione deve restituire la frequenza di x all’interno di l, ovvero il numero di volte che x compare in l. 12-Definire una funzione che riceva in input una lista e ne restituisca la moda, ovvero l’elemento che è presente con maggior frequenza nella lista. 13- Definire una funzione che riceva in input una lista di interi e ne restituisca il valore mediano. Il valore mediano è l'elemento che occupa la posizione centrale nella distribuzione ordinata dei valori. ESEMPIO: Per la lista L = [ 12 23 20 15 28 27 24] il valore mediano è 23.
14- Definire una funzione che riceva in input una lista di interi l e un intero s. La funzione deve restituire una nuova lista l1 il cui i-esimo elemento è il risultato del prodotto fra l’i-esimo elemento di l e s. Successivamente definire una funzione che esegue la stessa operazione ma modifica la lista ricevuta in input. 15- Definire una funzione che riceva in input una lista l e restituisca una lista l1 ottenuta a partire da l rimuovendone tutti gli elementi ripetuti. Successivamente definire una funzione che esegue la stessa operazione ma modifica la lista ricevuta in input. ESEMPIO: Per la lista L = [ 1 14 2 14 1 5 6 7 1 14 5 8] viene restituita la lista L1 = [ 1 14 2 5 6 7 8 ]
1- Definire una funzione che riceva in input due liste, l1 e l2, di uguale lunghezza e restituisca una lista l3 il cui i-esimo elemento è dato dalla somma fra l’i-esimo elemento di l1 e l’i-esimo elemento di l2. 2- Definire una funzione che riceva in input due liste, l1 e l2, di uguale lunghezza e restituisca una lista l3 il cui i-esimo elemento è dato dalla differenza fra l’i-esimo elemento di l1 e l’i-esimo elemento di l2. 3- Definire una funzione media_pesata(lista,lista_pesi) che restituisca la media pesata degli elementi contenuti in lista utilizzando i pesi presenti in lista_pesi. Lista e lista_pesi sono vettori paralleli. Si ricordi che la formula per il calcolo della media pesata è la seguente: 4- Definire una funzione che riceva come argomenti tre liste contenenti le ascisse [ x1;…;xn], le ordinate [y1;…;yn] e le masse di un insieme di punti [m1;…;mn] e restituisca una lista contenente le coordinate del loro centro di massa [xc, yc] definite come segue: 5- Definire una funzione prodotto_scalare(v1,v2) che riceve due liste di uguale lunghezza e restituisca il loro prodotto scalare. 6- Definire una funzione intersezione(u1,u2) che riceve in input due liste e restituisca una terza lista contenente solo gli elementi presenti sia in u1 che in u2. Nel caso un elemento comune sia presente più volta in u1 o u2, nella lista risultato dovrà essere presente un’unica volta. 7- Definire una funzione differenza(u1,u2) che riceve in input due liste e restituisca una terza lista contenente solo gli elementi presenti in u1 e non presenti in u2.
ESEMPIO: Se L = [2 7 1 35 1 17 3 4] allora la funzione restituisce True, perché: 4 > 0 7 > 2 + 4 17 > 2 + 7 + 3 + 4 35 > 2 + 7 + 1 + 17 + 3 + 4 15-Si scriva una funzione azzera_duplicati che riceve una lista L1 di interi positivi e restituisce una lista L2 della stessa lunghezza di L1 tale che, per ogni elemento L1[i]: se L1[i] non ha elementi uguali che lo precedono, allora L2[i] sarà uguale a L1[i], altrimenti L2[i] deve essere pari a zero. ESEMPIO: Se L1 = [2 1 5 2 7 5 1 9] allora azzera_duplicati(L1) restituisce la lista L2 = [2 1 5 0 7 0 0 9] 16-Si scriva una funzione verifica_liste che riceve una lista L1 di interi positivi distinti ed una lista L2 di interi. La funzione restituisce True se e solo se per ogni elemento x = L1[i], la lista L2 contiene una sottolista di lunghezza almeno x contenente solo elementi uguali ad x. Esempio: Se L1 = [3 1 4] ed L2 = [-3 2 1 5 4 4 4 4 -1 2 3 3 3 3], allora la funzione restituisce True perché l’elemento L[0] ha valore pari a 3 e la lista L2 contiene una sottolista di lunghezza 4 contenente solo elementi uguali a 3, l’elemento L[1] ha valore pari ad 1 e la lista L2 contiene una sottolista di lunghezza 1 contenente solo elementi uguali a 1 e l’elemento L[2] ha valore pari a 4 e la lista L contiene una sottolista di lunghezza 4 contenente solo elementi uguali a 4. 17-Si scriva una funzione elabora_lista che riceve una lista L1 di interi, la cui media indichiamo con m, e restituisce una lista L2 contenente gli elementi di L1 posizionati in modo tale che gli elementi minori o uguali ad m precedano i valori maggiori di m. Si noti che sono possibili diversi risultati corretti, purché sia rispettata la suddetta condizione. ESEMPIO: Se L1 = [7 4 7 3 6 8 9 1], allora un possibile risultato di elabora_lista(L1) è la lista L2 = [4 3 1 7 7 6 8 9], perché la media dei valori in L1 è 5,625. 18-Si scriva una funzione verifica che riceve una lista L di interi e un intero k e restituisce True se e solo se L contiene almeno k elementi consecutivi uguali. ESEMPIO: Se L = [1 8 2 1 1 1 2 1] e k = 3 allora verifica(L,k) restituisce True perché L contiene 3 elementi consecutivi uguali. 19-Si scriva una funzione filtra_lista che riceve una lista L1 di interi non negativi e restituisce una lista L2 costruita come segue:
la funzione verifica se ogni elemento di L1 avente valore x > 0 è preceduto da almeno x zeri e seguito da almeno x zeri; se tale condizione è vera, allora L2 contiene tutti gli elementi maggiori di zero presenti in L1; altrimenti, L2 è vuota. ESEMPIO: Se L1 = [0, 1, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 1, 0, 0] allora la funzione restituisce la lista L2 = [1, 3, 2, 1]. 20-Si scriva una funzione verifica_liste che riceve due liste L1 ed L2 di interi e un intero k e restituisce True se e solo se L1 ed L2 contengono due sottoliste uguali di lunghezza k. ESEMPIO: Se L1 = [1, 2, 3, 7, 3, 5, 3], L2 = [8, 7, 3, 5, 4] e k = 3, allora la funzione restituisce True perché le liste contengono entrambe la sottolista [7, 3, 5]. 21-Si scriva una funzione verifica_liste che riceve due liste L1 ed L2 di interi e un intero k e restituisce True se e solo se L1 contiene una sottolista di lunghezza k i cui elementi sono presenti in L2 nello stesso ordine (anche se in posizioni non consecutive). ESEMPIO: Se L1 = [3, 1, 2, 5, 7, 3, 5, 3], L2 = [8, 1, 7, 4, 2, 6, 3, 5, 4] e k = 3, allora la funzione restituisce True perché la lista L1 contiene la sottolista [1, 2, 5] i cui elementi sono presenti in L2 nello stesso ordine. 22-Si scriva una funzione verifica_liste che riceve due liste L1 ed L2 di interi e un intero k e restituisce True se e solo se ogni elemento L1[i] è presente in L2 in i-esima posizione oppure in una posizione che dista al più k posizioni dall’i-esima. Esempio: Se L1 = [3, 1, 8, 5, 4], L2 = [8, 1, 3, 4, 5] e k = 2, allora la funzione restituisce True perché l’elemento L1[0] è presente in L2 in posizione 2, l’elemento L1[1] è presente in L2 in posizione 1, l’elemento L1[2] è presente in L2 in posizione 0 e così via. 23-Si scriva una funzione verifica_lista che riceve una lista L di interi e restituisce True se e solo se ogni elemento di L avente valore n > 0 è immediatamente seguito da almeno n elementi aventi valore minore o uguale a 0. ESEMPIO: Se L = [-3, 1, -2, 2, 0, -1, -3, 3, 0, -1, -3, -1], allora la funzione restituisce True perché l’elemento L[1] = 1 è seguito da un elemento minore o uguale a 0, l’elemento L[3] = 2 è seguito da 3 elementi minori o uguali a 0 e l’elemento L[7] = 3 è seguito da 4 elementi minori o uguali a 0.