Programmazione Corso di laurea in Informatica

Slides:



Advertisements
Presentazioni simili
Algebra di Boole Casazza Andrea 3EA I.I.S. Maserati.
Advertisements

Elaborazione dei segnali mediante circuiti analogici o digitali.
if (condizione.) { blocco_istruzioni } else
Sviluppo di programmi strutturati
16/11/2004Laboratorio di Programmazione - Luca Tesei1 Espressioni booleane, confronti.
Istruzioni condizionali e blocco
(sommario delle lezioni in fondo alla pagina)
Fondamenti di Informatica
1 Università della Tuscia - Facoltà di Scienze Politiche.Informatica 2 - a.a Prof. Francesco Donini Condizioni ed istruzioni condizionali.
Algebra di Boole ed elementi di logica
Algebra di Boole ed elementi di logica
Algebra di Boole ed elementi di logica
Corso di Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Assegnamento di valore a una variabile Anno Accademico 2009/2010.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
1 Corso di Informatica (Programmazione) Lezione 10 (12 novembre 2008) Programmazione in Java: espressioni booleane e controllo del flusso (selezione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) JAVA: funzione di output a video Anno Accademico 2009/2010.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Le stringhe di caratteri in Java Anno Accademico 2009/2010.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Specifiche senza JML: uso delle asserzioni. 2 Asserzioni in Java Dal jdk 1.4 (da Febbraio 2002) cè meccanismo per gestire asserzioni Asserzione: espressione.
1 Lezione XIII Lu 17-Nov-2005 Programmare le classi.
Scomposizione di stringhe
Corso di Informatica A.A Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala Dott.ssa.
Corso di Informatica A.A Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala Dott.ssa.
Lezione 4: Costrutti Condizionali Prof. Raffaele Montella.
Fondamentidi Programmazione Corso: Fondamenti di Programmazione Classe: PARI-DISPARI Docente: Prof. Luisa Gargano Testo: Aho, Ulman, Foundations of Computer.
AA2003/04 © M.A. Alberti Programmazione Strutture dati 1 Programmazione Corso di laurea in Informatica.
Istruzioni di ripetizione in Java
Istruzioni di selezione in Java Programmazione Corso di laurea in Informatica.
Approfondimento delle classi
Selezione (=scelta) con “if-else”
Istruzioni Iterative Nicola Fanizzi
Indice: L’algebra di Boole Applicazione dell’algebra di Boole
Algebra di Boole L’algebra di Boole è un formalismo che opera su variabili (dette variabili booleane o variabili logiche o asserzioni) che possono assumere.
Lezione II Laboratorio di Programmazione. Sito del corso Lo trovate a:
Java base II: Strutture di Controllo
Claudia Raibulet Algebra Booleana Claudia Raibulet
Programmazione in Java Claudia Raibulet
Cicli in Fortran I cicli consentono di eseguire una sequenza di istruzioni più di una volta due tipi: Cicli iterativi Cicli while.
Parte 4 Elementi di Informatica di base
INFORMATICA MATTEO CRISTANI. INDICE CICLO DELLE LEZIONI LEZ. 1 INTRODUZIONE AL CORSO LEZ. 2 I CALCOLATORI ELETTRONICI LEZ. 3 ELEMENTI DI TEORIA DELL INFORMAZIONE.
R. Grande - Corso di Informatica '07
Algebra Booleana Come per la rappresentazione dell’informazione e la sua memorizzazione anche per la logica di elaborazione i computer digitali utilizzano.
Laboratorio di Informatica1 Parte 4 Laboratorio di Informatica Dott.ssa Elisa Tiezzi Dott.ssa Elisa Mori.
ECDL Patente europea del computer
Algebra di Boole.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algebra di Boole ed elementi di logica Marco D. Santambrogio – Ver. aggiornata.
1 Corso di Informatica (Programmazione) Lezione 8 (7 novembre 2008) Programmazione in Java: operatori aritmetici, operatori di assegnamento e cast.
Algebra di Boole.
Introduzione a Javascript
Parte 3 Lo stato: variabili, espressioni ed assegnazioni
Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre.
Circuiti logici.
La logica Dare un significato preciso alle affermazioni matematiche
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
Programmazione in Java
1 Fabio Scotti – Università degli Studi di Milano Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza Valentina Ciriani ( )
Lez. 11 (13/14)Elementi di Programmazione1 Lezione 11 Esercizi.
13 ottobre Decisioni F. Bombi 13 ottobre 2002.
Fondamenti di Informatica1 Memorizzazione su calcolatore L'unità atomica è il bit (BInary DigiT) L'insieme di 8 bit è detta byte Altre forme di memorizzazione:
Rappresentazione dell'informazione
Algebra di Boole L’algebra di Boole è un formalismo che opera su variabili (dette variabili booleane o variabili logiche o asserzioni) che possono assumere.
Rappresentazione in virgola mobile (floating-point) Permette di rappresentare numeri con ordini di grandezza molto differenti utilizzando per la rappresentazione.
Rappresentazione dell'informazione 1 Se ho una rappresentazione in virgola fissa (es. su segno e 8 cifre con 3 cifre alla destra della virgola) rappresento.
Copyright © Istituto Italiano Edizioni Atlas
Cloud informatica V anno. Introduzione a PHP Lo scripting PHP PHP è un linguaggio di scripting lato server. Le caratteristiche di un linguaggio di scripting.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algebra di Boole ed elementi di logica Marco D. Santambrogio – Ver. aggiornata.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algebra di Boole ed elementi di logica Marco D. Santambrogio – Ver. aggiornata.
Basi di Java Strutture base di Java. Basi di java ▪Variabili ▪Operatori ▪Condizioni e Cicli ▪Array.
Transcript della presentazione:

Programmazione Corso di laurea in Informatica Operatori in Java Programmazione Corso di laurea in Informatica

Operatori logici Nelle espressioni booleane si possono usare gli operatori logici ! NOT && AND || OR che richiedono operandi di tipo boolean e producono un risultato boolean L’operatore logico NOT è un operatore unario (ha un solo operando) Gli operatori logici AND e OR sono operatori binari (richiedono due operandi) AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatore logico NOT L’operatore logico NOT è anche chiamato negazione logica o complemento logico Se una condizione booleana a è vera, allora !a è falsa; se a è falsa, allora !a è vera Le espressioni logiche usano quindi la tabella di verità che segue a true false !a AA2003/04 © M.A. Alberti Programmazione Operatori Java

Gli operatori logici AND e OR L’espressione logica and a && b è vera se entrambi gli operandi a e b sono veri, ed è falsa altrimenti L’espressione logica or a || b è vera se a o b o entrambi sono veri, ed è falsa altrimenti AA2003/04 © M.A. Alberti Programmazione Operatori Java

Tavole di verità Una tavola di verità mostra le possibili combinazioni di termini di valori vero/falso Poiché && e || hanno due operandi ciascuno, ci sono 4 possibili combinazioni a true false b a && b a || b AA2003/04 © M.A. Alberti Programmazione Operatori Java

Gli operatori logici Gli operatori logici vengono usati come condizioni in istruzioni di selezione o cicli per formare espressioni complesse if (totale < MAX && !trovato) System.out.println ("Processing…"); Gli operatori logici hanno relazioni di precedenza tra loro e con altri operatori AA2003/04 © M.A. Alberti Programmazione Operatori Java

Espressioni booleane Gli operatori logici possono essere combinati per ottenere espressioni booleane complesse Attenzione, da errore: if ( 0 < numero < 1000) … if ( car == ‘a’ || ‘b’) … Occorre scrivere: if ( 0 < numero && numero < 1000) if (car == ‘a’ || car == ‘b’) AA2003/04 © M.A. Alberti Programmazione Operatori Java

Metodi predicativi Un metodo predicativo restituisce un valore di tipo boolean: public class ContoBancario { public boolean e’Scoperto() { return this.saldo() < 0 } Esempi predefiniti nella classe Character isDigit, isLetter, isUpperCase AA2003/04 © M.A. Alberti Programmazione Operatori Java

Variabili booelane Qualunque variabile che può assumere solo due valori può essere dichiarata di tipo boolean private boolean coniugato; if (coniugato) … e non if (coniugato == true) … Si chiamano anche flag AA2003/04 © M.A. Alberti Programmazione Operatori Java

Tavole di verità Le espressioni vengono valutate usando le tavole di verità (totale < MAX && !trovato) totale < MAX false true trovato !trovato && !trovato AA2003/04 © M.A. Alberti Programmazione Operatori Java

Legge di De Morgan Espressioni complesse come: if (!(0<numero && numero<1000)) non è vero che 0 < numero e numero < 1000 possono essere semplificate per essere rese più leggibili usando la legge di De Morgan (1806-1871) !(a && b) equivale a !a || !b !(a || b) equivale a !a && !b AA2003/04 © M.A. Alberti Programmazione Operatori Java

Semplificazione con De Morgan L’espressione if (!(0<numero && numero<1000)) si semplifica if (!(0<numero)||!(numero<1000)) e ancora if ((0>=numero)||(numero>=1000)) if ((numero<=0)||(numero>=1000)) AA2003/04 © M.A. Alberti Programmazione Operatori Java

Ancora operatori In Java ci sono altri operatori: Operatori di incremento e decremento Operatori di assegnamento Operatori condizionali AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatori di incremento e decremento Gli operatori di incremento e decremento sono operatori aritmetici unari L’operatore di incremento (++) aggiunge 1 al suo operando L’operatore di decremento (--) sottrae 1 al suo operando L’istruzione cont++; equivale all’istruzione cont = cont + 1; AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatori di incremento e decremento Operatori di incremento e decremento possono essere usati in forma prefissa (prima della variabile) o in forma postfissa (dopo la variabile) Quando si usano soli in una istruzione, le due forme sono equivalenti. cont++; equivale a ++cont; AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatori di incremento e decremento In un’espressione, le due forme possono avere effetti molto diversi Sempre la variabile viene aumentata o decrementata Ma il valore usato nell’espressione dipende dalla forma prefissa o postfissa: espressione cont++ ++cont cont-- --cont operazione sulla variabile somma 1 sottrae 1 valore usato nell’espressione precedente nuovo AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatori di incremento e decremento se cont contiene attualmente il valore 45, allora totale = cont++; assegna 45 a totale e 46 a cont totale = ++cont; assegna il valore 46 sia a totale sia a cont AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatori di assegnamento Spesso eseguiamo operazioni su una variabile, quindi archiviamo il nuovo risultato nella locazione della variabile Alcuni operatori di assegnamento consentono questo processo Esempio: num += cont; equivale a num = num + cont; AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatori di assegnamento Gli operatori di assegnamento operatore += -= *= /= %= esempio x += y x -= y x *= y x /= y x %= y equivale a x = x + y x = x - y x = x * y x = x / y x = x % y AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatori di assegnamento L’operando di destra di un operatore di assegnamento può essere un’espressione L’espressione di destra viene dapprima poi il risultato è opportunamente computato con il precedente valore della variabile Nell’istruzione risultato /= (totale-MIN) % num; si calcola prima il valore dell’espressione ((totale-MIN) % num); quindi si valuta risultato / valore_espressione e lo si assegna a risultato AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatore condizionale L’operatore condizionale valuta una condizione booleana che determina quale espressione, tra due possibili, valutare Il risultato dell’espressione selezionata diventa il risultato dell’operatore condizionale condizione ? Espressione_1 : espressione_2 Se condizione è vera, allora viene valutata espressione_1 altrimenti si valuta espressione_2 AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatore condizionale L’operatore condizionale è simile all’istruzione if-else, tranne che riporta il valore di un’espressione maggiore = (num1 > num2) ? num1 : num2; se num1 è maggiore di num2, allora a maggiore viene assegnato num1 altrimenti num2 L’operatore condizionale è un operatore ternario, cioé richiede tre operandi AA2003/04 © M.A. Alberti Programmazione Operatori Java

Operatore condizionale System.out.println (“Il resto è di " + cont + (cont == 1) ? “lira" : “lire"); se cont è 1, allora si stampa “lira“. Per qualunque altro valore di cont, si stampa “lire" AA2003/04 © M.A. Alberti Programmazione Operatori Java