Condizioni Logiche Che cosa sono: una condizione logica è un’espressione che può avere valore VERO o FALSO Ad esempio: – “Torino ha più abitanti di Roma” – “Lo studente Mario Rossi ha riportato un voto di Informatica superiore o uguale a 18” – “Il numero contenuto nella cella A1 è uguale al numero contenuto nella cella A2” – “La mail appena ricevuta arriva da un mittente del Centro di Restauro di Venaria” Condizioni Logiche A che cosa servono: in base al valore di una condizione logica è possibile effettuare una scelta oppure un’altra Ad esempio: – C: “Lo studente Mario Rossi ha riportato un voto di Informatica superiore o uguale a 18” Se C ha valore VERO: registro l’esame altrimenti (ovvero C ha valore FALSO): invito Mario Rossi a ripresentarsi più preparato Condizioni Logiche Dove le abbiamo incontrate: in molti contesti diversi: – nella funzione SE di Excel per scegliere se effettuare un calcolo oppure un altro – nei filtri automatici di Excel per scegliere se nascondere o meno una riga della tabella – nelle interrogazioni di Access per scegliere se includere o meno un record nel risultato – nei filtri dell’email per scegliere che azione fare all’arrivo di una nuova mail – nelle ricerche in Google per scegliere se restituire o meno una pagina Web Condizioni Logiche una condizione logica può essere: – un semplice confronto come “A1 > 2” – una combinazione di condizioni semplici con gli operatori dell’Algebra Booleana AND, OR e NOT (in Italiano E, O, NON) come “(A1 > 2) E (A1 < 3)” Condizioni Logiche tavole di verità di NON, E, O: C NON C VERO FALSO FALSO VERO C1 VERO VERO FALSO FALSO C1 VERO VERO FALSO FALSO C2 VERO FALSO VERO FALSO C2 VERO FALSO VERO FALSO C1 O C2 VERO VERO VERO FALSO C1 E C2 VERO FALSO FALSO FALSO Condizioni Logiche Condizioni composte: combinano altre condizioni con E, O, NON Ad esempio: – C: O(A1<0, A1>10) è VERA se: C1: A1<0 è VERA oppure C2: A1>10 è VERA – C: E(A1<10, NON(A1=0)) è VERA se: C1: A1<10 è VERA e inoltre C2: A1=0 non è VERA Condizioni Logiche Condizioni nidificate: in base al valore di una condizione, scegliamo di applicare un’altra condizione se C1 è VERA faccio subito la scelta S1 C1 VERA FALSA S1 C2 VERA S2 FALSA S3 Condizioni Logiche Condizioni nidificate: in base al valore di una condizione, scegliamo di applicare un’altra condizione se C1 è VERA faccio subito la scelta S1 se C1 è FALSA applico la condizione C2 C1 VERA FALSA S1 C2 VERA S2 FALSA S3 Condizioni Logiche Condizioni nidificate: in base al valore di una condizione, scegliamo di applicare un’altra condizione C1 VERA FALSA S1 C2 VERA S2 FALSA S3 se C1 è VERA faccio subito la scelta S1 se C1 è FALSA applico la condizione C2 se C2 è VERA faccio la scelta S2 se C2 è FALSA faccio la scelta S3 Condizioni Logiche esempio: sia data una misura di temperatura nella cella A1 condizione: è vero che la temperatura è compresa tra 20° e 25°? condizione formalizzata: E(A1>=20; A1<=25) possiamo valutare il valore (VERO o FALSO) in una formula Excel: =E(A1>=20; A1<=25) Condizioni Logiche esempio: sia data una misura di temperatura nella cella A1 condizione: è vero che la temperatura è compresa tra 20° e 25° oppure che è compresa tra 10° e 15°? condizione formalizzata: O(E(A1>=20; A1<=25), E(A1>=10; A1<=15)) Condizioni Logiche esempio: sia dato il tipo di un film nella cella A1 e il luogo di produzione nella cella A2 condizione: è vero che, se il film è di tipo fantascienza, il luogo di produzione sono gli USA? condizione formalizzata: O(NON(A1=“fantascienza”); A2=“USA”) Condizioni Logiche esempio: sia dato il tipo di un film nella cella A1 e il luogo di produzione nella cella A2 condizione: è vero che se il film è prodotto negli USA allora è di tipo fantascienza? condizione formalizzata: O(A1=“fantascienza”; NON(A2=“USA”)) Condizioni Logiche esempio: sia dato il tipo di un film nella cella A1 e il luogo di produzione nella cella A2 condizione: è vero che il film è prodotto in Italia oppure è di tipo fantascienza ma non entrambe le cose? condizione formalizzata: E(O(A1=“fantascienza”; A2=“Italia”); NON(E(A1=“fantascienza”; A2=“Italia”))) Condizioni Logiche e Google le condizioni sono onnipresenti per eseguire ricerche ad esempio in Google “Ricerca avanzata” possiamo specificare: – parole in “E” ( “tutte le seguenti parole”) – parole in “O” (“una qualunque delle seguenti parole) – parole in “NON” (“che non contengono le seguenti parole”) Condizioni Logiche e Google ad esempio: vogliamo: – pagine di “musica” che… – siano relative a uno dei generi “rock”, “jazz” o “classica” ma… – non vogliamo pagine da “wikipedia” Condizioni Logiche e Google Google restituisce una pagina pag solo quando la seguente condizione è vera: E(pag contiene “musica”; O(pag contiene “rock”; pag contiene “jazz”; pag contiene “classica”); NON(pag contiene “wikipedia”))