Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Esercizio python sulle list comprehension, Esercizi di Informatica

È contenuto un esercizio python sulle list comprehension ideato da uno studente di terza liceo con griglia di valutazione e soluzioni.

Tipologia: Esercizi

2023/2024

Caricato il 14/12/2023

brambilla-alessandro
brambilla-alessandro 🇮🇹

5

(1)

17 documenti

1 / 3

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Python: esercizio sulle list comprehension:
Produci utilizzando una list comprehension una lista l di 30 numeri reali casuali da 0 a 1. Produci poi una
matrice mat di 5 liste (sempre con le list comprehension) aventi all’interno i numeri n contenuti in l tale che
in mat[i] siano contenuti numeri 0.22*i <= n < (1+i)*0.22 (ovviamente i numeri in mat[4] saranno
comunque <=1)
Stampare l
Stampare quanti numeri siano contenuti in ogni riga e gli elementi stessi di ogni riga in ordine crescente
stampare poi, la media totale dei numeri, la media di ogni lista e la media delle medie di ogni lista.
Soluzione in fondo
Autovalutazione:
Corretta creazione di l: /0.3
Con list comprehension: /0.4
Corretta stampa di l: /0.3
Corretta produzione di mat: /0.5
Utilizzo delle list comprehension per ogni riga di mat: /4.0
Stampa della quantità di numeri per riga: /0.5
Ordinamento della riga: /0.5
Stampa degli elementi della riga: /0.2
Calcolo della media di tutti i numeri: /0.5
Calcolo della media di ogni riga: /1
Producendo una lista: /0.1
Con list comprehension: /0.9
Calcolo della media fra le medie di ogni riga: /0.5
Stampa delle medie: /0.3
PUNTI TOTALI: /10
Legenda (estremo minimo compreso, estremo massimo escluso):
0-1 Compito Invalutabilmente scarso
pf3

Anteprima parziale del testo

Scarica Esercizio python sulle list comprehension e più Esercizi in PDF di Informatica solo su Docsity!

Python: esercizio sulle list comprehension: Produci utilizzando una list comprehension una lista l di 30 numeri reali casuali da 0 a 1. Produci poi una matrice mat di 5 liste (sempre con le list comprehension) aventi all’interno i numeri n contenuti in l tale che in mat[i] siano contenuti numeri 0.22i <= n < (1+i)0.22 (ovviamente i numeri in mat[4] saranno comunque <=1) Stampare l Stampare quanti numeri siano contenuti in ogni riga e gli elementi stessi di ogni riga in ordine crescente stampare poi, la media totale dei numeri, la media di ogni lista e la media delle medie di ogni lista. Soluzione in fondo Autovalutazione: Corretta creazione di l: /0. Con list comprehension: /0. Corretta stampa di l: /0. Corretta produzione di mat: /0. Utilizzo delle list comprehension per ogni riga di mat: /4. Stampa della quantità di numeri per riga: /0. Ordinamento della riga: /0. Stampa degli elementi della riga: /0. Calcolo della media di tutti i numeri: /0. Calcolo della media di ogni riga: / Producendo una lista: /0. Con list comprehension: /0. Calcolo della media fra le medie di ogni riga: /0. Stampa delle medie: /0. PUNTI TOTALI: / Legenda (estremo minimo compreso, estremo massimo escluso): 0-1 Compito Invalutabilmente scarso

1-2 Compito Scarsissimo 2-3 Compito Insufficiente in maniera gravissima 3-4 Compito gravemente insufficiente 4-5 Compito pienamente insufficiente 5-6 Compito lievemente insufficiente 6-6.5 compito appena sufficiente 6.5-7.5 compito discreto 7.5-8.5 compito buono 8.5-9.5 compito ottimo 9.5-10 compito eccellente Soluzione: from random import random l=[random() for _ in range(30)] for el in l: print (f'{el:2f}', end=' ') print () print() mat=[] for i in range(4): mat.append([]) mat[i]=[el for el in l if el>=0.22i and el <0.22(i+1)] mat.append([el for el in l if el>=0.88]) medie=[] for i, riga in enumerate (mat): riga.sort() if i<4: print (f"nella lista ci sono {len(riga)} elementi che vadano da {i0.22} a meno di {(i+1)0.22}:", end =' ')