




























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
Una guida dettagliata sull'utilizzo e l'implementazione delle funzioni in python. Vengono spiegati concetti chiave come la chiamata di funzioni, le funzioni integrate, i cicli annidati e l'elaborazione di stringhe. Il testo include esempi pratici e spiegazioni chiare su come progettare e testare le proprie funzioni, oltre a discutere l'ambito delle variabili e le funzioni ricorsive. Ideale per studenti e programmatori che desiderano approfondire la loro conoscenza delle funzioni in python e migliorare le loro competenze di programmazione. Una panoramica completa e ben strutturata delle funzioni in python, rendendolo una risorsa preziosa per l'apprendimento e la consultazione.
Tipologia: Appunti
1 / 36
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!





























Algoritmo Un algoritmo è una descrizione passo passo di come risolvere un problema. C’è differenza tra algoritmo e programma. Il programma può essere infinito mentre l’algoritmo è sempre finito. Programmi Un programma per computer comunica a un computer la sequenza di passaggi necessari per completare un’attività specifica. Il programma è costituito da un numero elevato di istruzioni primitive (semplici). I computer possono svolgere una vasta gamma di compiti perché possono eseguire programmi diversi. Ogni programma è progettato per indirizzare il computer a lavorare su un’attività specifica. Programmazione L’atto di progettare, implementare e testare programmi per computer. Software e hardware Andiamo a separare la parte software da quella hardware perché la parte hardware è “inferiore”. Nell’architettura di Von Neumann non c’era la parte software, non aveva programmi. L’hardware è costituito dagli elementi fisici di un sistema informatico (monitor, mouse, tastiera…). -La CPU esegue il controllo del programma e l’elaborazione dei dati. È composta dall’unità di controllo, l’unità logica aritmetica, i registi e il clock. Dirige il funzionamento del processore. -I dispositivi di archiviazione includono memoria (RAM) e spazio di archiviazione secondario (disco rigido, unità flash). Esistono due tipi di archiviazione: primaria e secondaria. La prima è volatile, mantiene la memoria finché è fornita energia elettrica. Lo storage secondario fornisce uno storage più lento, meno costoso e persistente: i dati persistono senza energia elettrica.
I computer memorizzano sia dati che programmi che si trovano nella memoria secondaria e caricati in memoria primaria quando il programma viene eseguito. Il computer tipico ha una memoria principale che va da 4 Gb a 32 Gb. -I dispositivi di input/output consentono all’utente di interagire con il computer (mouse, tastiera, stampante…). Eseguire un programma Quando un programma viene avviato, viene portato in memoria, dove la CPU può leggerlo. -La CPU esegue il programma un’istruzione alla volta. -Il programma può reagire agli input dell’utente. -Le istruzioni e gli input dell’utente guidano l’esecuzione del programma. -La CPU legge i dati, li modifica e li riscrive in memoria, sullo schermo o sulla memoria. Software È tipicamente realizzato come programma applicativo. Il software è una sequenza di istruzioni e decisioni implementate in un linguaggio tradotte in una forma che può essere eseguita sul computer. Algoritmi Per far eseguire un compito ad un computer si inizia scrivendo un algoritmo. Un algoritmo è una sequenza di azioni da compiere per portare a termine un determinato compito. Per problemi complessi, gli sviluppatori di software scrivono un algoritmo prima di tentare di scrivere un programma per computer. È consigliato scrivere algoritmo (pseudocodice/diagramma di flusso) prima di ogni progetto. Un algoritmo descrive una sequenza di passaggi che è:
Errori Esistono due categorie di errori:
Il valore a destra del segno ‘=’ viene assegnato alla variabile a sinistra. ATTENZIONE: per il confronto NON si utilizza il segno “=”. Per il confronto si utilizza il doppio uguale (==) Esempio
Abbiamo tre diversi tipi di dati:
Aggiornando una variabile (assegnando un valore) Se a una variabile esistente viene assegnato un nuovo valore, questo sostituisce il contenuto precedente della variabile. Esempio
A warning... Poiché il tipo di dati è associato al valore e non alla variabile:
can volume Error: variable names cannot contain spaces class Error: you cannot use a reserved word as a variable name ltr/fl.oz Error: you cannot use symbols such as / or. Costanti In Python una costante è una variabile il cui valore non deve essere modificato dopo che le è stato assegnato un valore iniziale.
È buona norma utilizzare le costanti con nome per spiegare i valori numerici da utilizzare nei calcoli.
Se in un’espressione aritmetica si mescolano valori interi e in virgola mobile, il risultato è un valore in virgola mobile.
(se si mescolano stringhe con valori interi o in virgola mobile, il risultato è un errore) Potenze Doppi asterischi ** vengono utilizzate per elevamento a potenza. Divisione intera (floor)
Calcolo di un resto Se siete interessati al resto della divisione di due numeri interi, utilizzate l’operatore “%”
cos(x) The cosine of x in radians sin(x) The sine of x in radians tan(x) The tangent of x in radians exp(x) e elevata a x degrees(x) Convert x radians to degrees (x * 180/pi greco) radians(x) Convert x degrees to radians (x * pi greco/180) log(x) log(x, base) The natural logarithm of x (to base e) or the logarithm of x to the given base Con l’asterisco importo tutte le funzioni del modulo Math.
Funzioni integrate (built-in function) Built-in functions sono un piccolo insieme di funzioni che sono definite come parte del linguaggio Python. Possono essere usate senza importare nessun modulo. Conversione da virgola mobile a numero intero È possibile utilizzare tutte le funzioni int() e float() per convertire tra valori interi e in virgola mobile:
Un passo molto importante per lo sviluppo di un algoritmo è quello di eseguire prima i calcoli a mano, senza quello non è possibile scrivere il programma. Esempio di problema: Una fila di piastrelle bianche e nere deve essere collocata lungo una parete. L'architetto ha specificato che la prima e l’ultima piastrella devono essere nere.
Calcola ampiezza totale di tutte le piastrelle
Calcolare le distanze (una per ogni estremità
Dopodiché si deve ideare un algoritmo
▫ Un testo comprende caratteri ▫ Caratteri sono lettere, numeri, segni di punteggiatura, spazi, ... ▫ Una stringa è una sequenza di caratteri Una stringa in Python viene specificata racchiudendo una sequenza di caratteri all’interno di una coppia corrispondente di apici singoli (‘’) o doppi (“”). Ricordate di usare coppie di virgolette corrispondenti, singole con singolo, doppie con doppie. Il numero di caratteri di una stringa si chiama lunghezza della stringa
Stringhe e caratteri Le stringhe sono sequenze di caratteri Python usa caratteri Unicode
Operazioni col le stringhe Metodi Nella programmazione informatica, un oggetto è un’entità software che rappresenta un valore con un determinato comportamento.
Method Returns lower() A lowercase version of string s. upper() An uppercase version of s. replace(old, new) A new version of string s in which every occurrence of the substring old is replaced by the string new. 2.5 INPUT E OUTPUT È possibile leggere una stringa dalla console con la funzione input():
La conversione di una variabile stringa in numero può essere utilizzata se è necessario un input numerico (piuttosto che stringa):
L'istruzione sopra può essere svolta anche in due steps (ottenendo l’input e convertendolo in un numero):
3.1 Istruzione if Un programma informatico deve spesso prendere decisioni basate su input o circostanze. Ad esempio, gli edifici spesso saltano il piano numero 13. Il piano 14 è in realtà il piano 13, quindi ogni piano sopra il 12 è in realtà “piano -1”.
3.2 Operatori relazionali Assegnazione vs. Test di uguaglianza
3.6 Analisi delle stringhe Analisi delle stringhe – Operatore IN A volte è necessario determinare se una stringa contiene una determinata sottostringa.
L’operatore not in è l’inverso dell’operatore in. Sottostringa: Suffissi Supponiamo che ti venga assegnato il nome di un file e che sia necessario assicurarsi che abbia l’estensione corretta.
Il metodo stringa endswith() viene applicato alla stringa memorizzata in filename e restituisce True se la stringa termina con la sottostringa “.html” e False in caso contrario.
3.7 Convalida dell’input Accettare l’input dell’utente è pericoloso. Convalidare l’input attraverso le condizioni. Summary: if statement L'istruzione if consente a un programma di eseguire azioni diverse a seconda della natura dei dati da elaborare. Gli operatori relazionali (< <= > >= == !=) vengono utilizzati per confrontare numeri e stringhe. Le stringhe vengono confrontate in ordine lessicografico. È possibile combinare più istruzioni if per valutare decisioni complesse. Quando si utilizzano più istruzioni if, testare le condizioni generali dopo condizioni più specifiche. Summary: condizioni annidate