Corsi di Laurea in Biotecnologie (primo anno interfacoltà) Corso integrato di Matematica, Informatica e Statistica Informatica di base Linea 1 Daniela Besozzi Dipartimento di Informatica e Comunicazione Università degli Studi di Milano Quinta lezione: I fogli di calcolo (Capitolo 11) Informatica di base – Linea 1 2 Prima parte: Motivazioni “Mi piace questa cosa che ci spiega perché ci spiega le cose” Informatica di base – Linea 1 3 Perché i fogli di calcolo? • Ci sono tantissime applicazioni per computer, perché studiamo proprio i fogli di calcolo? 1. Perché vengono utilizzati in molti campi lavorativi e di ricerca 2. Perché senza un po’ di teoria non si riescono ad utilizzare bene • a differenza di molte altre applicazioni 3. Perché ci aiuteranno a “pensare in modo algoritmico” Informatica di base – Linea 1 4 Quale applicativo possiamo usare? • Microsoft Excel – in una qualunque versione (ce ne sono tante) • OpenOffice Calc – scaricabile gratuitamente da http://it.openoffice.org/ • Google documents – create un account Google (da casa!) perché ci servirà in laboratorio • AppleWorks, Lotus 123, .... Informatica di base – Linea 1 5 Come procediamo? • Oggi: un’introduzione teorica • Seguiranno alcune esercitazioni di laboratorio – il laboratorio sarà più difficile di quelli che abbiamo fatto fino ad ora Informatica di base – Linea 1 6 Seconda parte: Cosa sono i fogli di calcolo? “Se me lo avessi detto prima, avrei anche capito di cosa stiamo parlando” Informatica di base – Linea 1 7 Organizzazione delle informazioni • L’organizzazione delle informazioni è molto importante in qualunque ambito: – pensate agli archivi cartacei • In ambito informatico è ancora più importante: – perché facilita il trattamento automatico dell’informazione Informatica di base – Linea 1 8 I fogli elettronici: vantaggi • Sono uno strumento per gestire molti tipi di informazione: – versatile – di facile utilizzo anche per utenti mediamente esperti – rendono possibile il trattamento automatico dell’informazione • anche a chi non sa programmare – hanno potenti funzionalità che permettono di svolgere compiti complessi “con pochi click” Informatica di base – Linea 1 9 I fogli elettronici: svantaggi • Non sono un strumento specializzato: – alcuni tipi di informazione non possono essere trattati in maniera efficiente – a volte è necessario utilizzare applicazioni più specifiche • Hanno alcuni limiti: – ad esempio, il numero delle informazioni che possono essere memorizzate Informatica di base – Linea 1 10 I fogli elettronici: come si presentano • Una matrice (array) di celle, come in una tabella: – colonne numerate con le lettere (A, B, C, ...) – righe numerate con i numeri (1, 2, 3, ...) • Le celle sono identificate dalla colonna e dalla riga: – es: A1, B3, C6 11 Che tipo di informazioni? • In ogni cella posso mettere le informazioni che desidero: – numeri (attenzione alle virgole!) – lettere – parole – frasi – date – altro.... Informatica di base – Linea 1 12 Importante! • In celle diverse posso mettere dati diversi • Possiamo mettere dati di tipo diverso anche in celle della stessa colonna: – vedremo che questo non vale per le basi di dati A 1 L’amore ai tempi del colera 2 50,32 3 10/11/2007 Informatica di base – Linea 1 13 Il formato dei dati • E’ possibile specificare qual è il formato dei dati in una cella: – esempio: possiamo specificare che una cella contiene un importo in euro • l’importo viene visualizzato preceduto dal simbolo €. • Come si fa a specificare il formato? – lo vediamo in laboratorio Informatica di base – Linea 1 14 Attenzione! • Non sempre c’è corrispondenza tra: – il “valore” contenuto in una cella, e quanto viene visualizzato all’interno della cella stessa • Perché è importante saperlo? – perché sulle celle possiamo applicare delle funzioni, e ci serve sapere cosa contengono veramente (e non come il contenuto viene visualizzato) Informatica di base – Linea 1 15 Il formato dei dati (esempio) • Il contenuto di una cella viene visualizzato come: € 2.500,50 – potrebbe essere che la cella contiene i caratteri “€ 2.500,50” – ma è anche possibile che la cella contenga il valore 2500,50 con la formattazione “valuta” • Come facciamo a sapere qual è il contenuto vero? – doppio click sulla cella Informatica di base – Linea 1 16 “Come devo organizzare i dati?” • Come vuoi tu: – è questo il bello dei fogli di calcolo • Esempio: supponiamo di dover memorizzare i dati di una libreria: – titolo, casa editrice, anno A 1 2 3 B C L’amore ai tempi del colera Marquez Mondadori 17 L’organizzazione è importante! • Rende l’informazione più facile da: – inserire – leggere – manipolare automaticamente A 1 L’amore ai tempi del colera B Marquez C Mondadori 2 3 Informatica di base – Linea 1 18 Ordinare i dati A 1 L’amore ai tempi del colera B Marquez 2 Donna Flor e i suoi due mariti Amado 3 Cent’anni di solitudine Marquez C Mondadori Feltrinelli Pearson • Esiste un comando di ordinamento: – riordina le righe mettendole in ordine secondo i valori contenuti in una o più colonne – in genere non esiste lo stesso comando per ordinare le colonne sulla base delle righe Informatica di base – Linea 1 19 Operazioni classiche sulle celle Informatica di base – Linea 1 20 Terza parte: Le funzioni “Ma questo mica è il corso di matematica, no?” Informatica di base – Linea 1 21 Le funzioni nei fogli di calcolo? • Permettono di calcolare un valore sulla base del contenuto di altre celle A 1 15 B 4 C • Esempio: “il contenuto della cella C1 deve essere uguale alla somma dei valori contenuti in A1 e in B1” Informatica di base – Linea 1 22 Funzioni: aggiornamento automatico A 1 15 B 4 C • Chiaramente, potremmo calcolare “a mano” il valore da inserire in C1 e scriverlo: – in questo caso, però, se modifico il valore di A1, il valore di C1 rimane invariato • Se invece usiamo una funzione, quando modifichiamo il valore della cella A1 (o B1) il valore in C1 viene aggiornato automaticamente Informatica di base – Linea 1 23 Copia delle funzioni • Può capitare spesso che, se volete che il valore di C1 sia uguale alla somma dei valori di A1 e B1, poi vogliate fare la stessa cosa anche per altre righe • Se fate i conti “a mano”, dovete ripeterli per tutte le righe • Se invece usate le funzioni, potete copiarle e incollarle calcolando così tutte le somme in modo automatico: – è molto più rapido (le righe potrebbero anche essere migliaia) – attenzione: il modo corretto per fare “copia e incolla” non è immediato Informatica di base – Linea 1 24 Le funzioni • Per fare in modo che la cella C1 contenga la somma del valore di A1 e B1, scriviamo all’interno di C1: =A1+B1 – “=” indica che quella che segue è una formula – “A1” e “B1” sono i riferimenti alle celle – “+” è l’operazione algebrica da svolgere Informatica di base – Linea 1 25 Le funzioni: cosa viene visualizzato • Quando scriviamo una funzione: – viene visualizzato il risultato dell’operazione – la cella contiene la funzione (NON il risultato) A 1 15 B 4 C 19 Doppio click su C1 A 1 15 B 4 Informatica di base – Linea 1 C =A1+B1 26 I riferimenti A 1 15 B 4 2 7 2 C =A1+B1 • Quando copiamo il contenuto della cella C1 nella cella C2: – i riferimenti vengono modificati automaticamente – C2 contiene “=A2+B2” • I riferimenti “A1”, “B1”, “A2”, “B2” vengono detti relativi: – cioè dipendono dalla posizione della cella in cui sono posizionati Informatica di base – Linea 1 27 I riferimenti: sempre relativi? A 1 Sconto B 5% C 3 Prodotto Prezzo Listino Sconto 4 Matite colorate 50 =B4*B1 5 Pennarelli colorati 30 2 • Calcoliamo in C4 il prezzo determinato dallo sconto definito in B1 sul contenuto della cella B4: cioè “=B4*B1” • Ora vogliamo che lo sconto definito in B1 sia applicato anche al contenuto della cella B5: – cosa succede se copiamo la formula della cella C4 nella cella C5? Informatica di base – Linea 1 28 “Mmm, non va bene!” A 1 Sconto B 5% C 3 Prodotto Prezzo Listino Sconto 4 Matite colorate 50 =B4*B1 5 Pennarelli colorati 30 =B5*B2 2 • Se copiamo la formula della cella C4 nella cella C5, il primo operando cambia da B4 a B5, il secondo operando da B1 a B2 non va bene! Informatica di base – Linea 1 29 Come facciamo allora? A 1 Sconto B 5% C 3 Prodotto Prezzo Listino Sconto 4 Matite colorate 50 =B4*B1 5 Pennarelli colorati 30 =B5*B2 2 • Idea: i riferimenti del primo operando devono cambiare quando cambio riga, ma quelli al secondo operando devono rimanere “bloccati” – cioè, B1 non deve essere trasformato in B2 Informatica di base – Linea 1 30 Soluzione: i riferimenti assoluti • Il simbolo “$” viene utilizzato per indicare che un riferimento non deve essere modificato quando viene copiato da una cella all’altra • I riferimenti così fatti si chiamano assoluti A B Sconto 5% 3 Prodotto Prezzo Listino Sconto 4 Matite colorate 50 =B4*$B$1 5 Pennarelli colorati 30 =B5*$B$1 1 C 2 I riferimenti: un altro esempio A B 1 Sconto 2 C D % Sconto base 5% % Sconto soci 10% 3 4 Prodotto PrezzoListino Sconto base 5 Matite colorate 50 Sconto soci 6 Pennarelli colorati 30 Informatica di base – Linea 1 32 I riferimenti: un altro esempio A 1 Sconto B 2 C % Sconto base D % Sconto soci 5% 10% 3 4 Prodotto PrezzoListino Sconto base 5 Matite colorate 50 Sconto soci =B5*C2 6 Pennarelli colorati 30 • Se usiamo i riferimenti relativi, cosa succede quando copiamo la funzione contenuta in C5 nelle celle D5, C6 e D6? Informatica di base – Linea 1 33 I riferimenti: un altro esempio A 1 Sconto B C % Sconto base 5% 2 D % Sconto soci 10% 3 4 Prodotto PrezzoListino Sconto base Sconto soci 5 Matite colorate 50 =B5*C2 =C5*D2 6 Pennarelli colorati 30 =B6*C3 =C6*D3 • Riferimenti sbagliati! • Cosa dovrebbe esserci? Informatica di base – Linea 1 34 I riferimenti: un altro esempio A 1 Sconto B C D % Sconto base % Sconto soci 5% 10% 4 Prodotto PrezzoListino Sconto base 5 Matite colorate 50 =$B$5*$C$2 6 Pennarelli colorati 30 2 3 Sconto soci • Se usiamo i riferimenti assoluti, cosa succede quando copiamo la funzione contenuta in C5 nelle celle D5, C6 e D6? Informatica di base – Linea 1 35 I riferimenti: un altro esempio A 1 Sconto B C D % Sconto base % Sconto soci 5% 10% 4 Prodotto PrezzoListino Sconto base Sconto soci 5 Matite colorate 50 =$B$5*$C$2 =$B$5*$C$2 6 Pennarelli colorati 30 =$B$5*$C$2 =$B$5*$C$2 2 3 • Anche con i riferimenti assoluti non va bene! – Cosa dovrebbe esserci? Informatica di base – Linea 1 36 Soluzione A Il contenuto delle B 1 Sconto celle in verde è copiato e incollato da 2 non riscritto a C5, 3 mano! C % Sconto base 5% D % Sconto soci 10% 4 Prodotto PrezzoListino Sconto base Sconto soci 5 Matite colorate 50 =$B5*C$2 =$B5*D$2 6 Pennarelli colorati 30 =$B6*C$2 =$B6*D$2 • Usiamo riferimenti misti: – assoluti sulla colonna B e relativi per le righe 5 e 6 ($B5, $B6) – relativi sulle colonne C e D e assoluti sulla riga 2 (C$2, D$2) Informatica di base – Linea 1 37 Riferimenti relativi/assoluti/misti • A1 – colonna e riga entrambe relative • $A1 – colonna assoluta e riga relativa • A$1 – colonna relativa e riga assoluta • $A$1 – colonna e riga entrambe assolute Informatica di base – Linea 1 38 Le funzioni in generale • Negli esempi abbiamo visto funzioni algebriche • Esistono moltissimi tipi di funzioni. Esempi: – Funzioni statistiche: • media, massimo, minimo in un insieme di celle, … – Funzioni logiche: • se, e, o, no, … – Funzioni matematiche e trigonometriche: • seno, coseno, log, MCD, ... Informatica di base – Linea 1 39 Come si usano le funzioni • Si specificano il nome della funzione e i suoi parametri: – es: “=media(A1:A9)” calcola il valore medio tra le celle A1, A2, ..., A9 • il simbolo “:” tra i riferimenti a due celle indica il range (intervallo) di celle comprese tra il primo riferimento e il secondo • il simbolo “;” viene utilizzato per separare gli argomenti di una funzione • In laboratorio impareremo ad usare le funzioni Informatica di base – Linea 1 40 Che lingua parli? • Fate attenzione: se cambiate l’applicativo (Excel, Calc, ecc.) potrebbero cambiare i nomi dati ad alcune funzioni • Per esempio, se avete una versione in italiano e una in inglese: – in italiano: “somma” – in inglese: “sum” Informatica di base – Linea 1 41 Le funzioni annidate • Le funzioni hanno dei parametri: – in “=media(A1:A9)” il parametro è il range di celle tra A1 e A9 • Ma i parametri delle funzioni possono essere anche altre funzioni: – es: “=somma(A1:A3;media(A1:A3))” – che cosa calcola la formula precedente? Informatica di base – Linea 1 42 Quarta parte: Come si risolve un problema usando i fogli di calcolo? “Ma non basta una calcolatrice?” Informatica di base – Linea 1 43 Cosa dobbiamo fare? • Pensate in modo algoritmico! – non vuol dire che dovete imparare a “scrivere” un algoritmo – significa che dovete imparare a risolvere un problema usando un ragionamento sistematico e rigoroso: • es: suddividiamo il problema in tante parti, risolviamo ogni parte e poi rimettiamo insieme tutte le soluzioni parziali Informatica di base – Linea 1 44 Problema Problema Programma (per risolvere il problema) Foglio di calcolo Soluzione Soluzione Informatica di base – Linea 1 45 Quali sono i passaggi per risolvere un problema con i fogli di calcolo? 1. Capire il problema: – sembra una cosa scontata, ma quasi sempre è una fase sottovalutata 2. Scelta dell’informazione da rappresentare: – a volte sembra scontato, ma per problemi complessi potrebbe non esserlo 3. Scelta dell’organizzazione dell’informazione: – non è immediato, serve un po’ di esperienza Informatica di base – Linea 1 46 Quali sono i passaggi per risolvere un problema con i fogli di calcolo? 4. Definizione delle funzioni: – se l’informazione è organizzata bene, risulta molto più facile 5. Formattazione e visualizzazione: – utilizzare grafici, formattazione del contenuto/forma delle celle, formattazione condizionale, ecc. Informatica di base – Linea 1 47 Quali capacità acquisite? • Dovrete imparare a creare un modello • Imparerete con problemi semplici: – a volte troppo semplici (la soluzione sembra immediata), non sottovalutateli! – poi sarete in grado di applicare lo stesso procedimento a problemi ben più complessi • speriamo... • …perché la parte pratica dell’esame consisterà proprio in questo Informatica di base – Linea 1 48 Cos’è un modello di un problema? – Rappresentazione concettuale e formale del problema – Permette di definire forme di ragionamento – Include assunzioni sul mondo reale – Se il modello è corretto e le assunzioni sono coerenti con il mondo reale, i risultati ottenuti attraverso il ragionamento nel modello saranno osservabili nel mondo reale Informatica di base – Linea 1 49 Esempio di utilizzo di un modello Mondo reale Modello Mondo reale Dove cade la palla di cannone? Rappresentazione del problema, ragionamento, assunzioni, ecc. Modello e assunzioni corrette risultato osservabile nel mondo reale 50 Strutturazione dei dati e identificazione delle funzioni da utilizzare • Com’è più conveniente strutturare i dati? Cerchiamo di semplificare: – la comprensione da parte dell’uomo – la specifica delle funzioni • Quali funzioni dobbiamo utilizzare? – capire quali istruzioni/dati abbiamo a disposizione – quali sono le funzioni che mi rendono più semplice la risoluzione del problema? – vi spiegherò come potete imparare da soli ad usare una qualunque funzione Informatica di base – Linea 1 51 Quinta parte: Conclusioni “Comincio a essere un po’ preoccupato per l’esame…” Informatica di base – Linea 1 52 I fogli di calcolo • Organizzazione dei dati per facilitare e consentire il trattamento automatico delle informazioni: – parole chiave: organizzare, formattare, ordinare • Le celle e i riferimenti relativi/assoluti/misti: – facciamo sempre attenzione quando vogliamo “copiare e incollare” una formula! Informatica di base – Linea 1 53 I fogli di calcolo • L’utilizzo delle funzioni: – cosa vogliamo calcolare? Su quali dati lavoriamo? – specificare i parametri delle funzioni (a volte, funzioni dentro le funzioni) • Come possiamo usare un foglio di calcolo per risolvere un problema? – dal problema al modello: capiamo cosa dobbiamo fare e procediamo in modo “algoritmico” Informatica di base – Linea 1 54