La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Programmazione in Java Claudia Raibulet

Presentazioni simili


Presentazione sul tema: "Programmazione in Java Claudia Raibulet"— Transcript della presentazione:

1 Programmazione in Java Claudia Raibulet raibulet@disco.unimib.it

2 Tipo char Osservazione: È un tipo intero in Java, quindi si possono utilizzare tutte le operazioni disponibile per i numeri interi char a=a, b=b; int x = a + b; System.out.println(x= + x); Risultato: 195 char a=a; char b=B; char x=\; char y=\\; char z=\n;...

3 Assegnazione dei valori alle variabili Piu casi: Assegnazione di un valore int x; // dichiarazione di una variabile x = 10; // inizializzazione della variabile x Assegnazione del contenuto di unaltra variabile int x, y; // dichiarazione di due variabili x = 10; // inizializzazione della variabile x y = x; // y ha lo stesso contenuto/valore di x Assegnazione del risultato di una espressione int x=5, y=2, z; // dichiarazione ed inizializzazione // di due variabili (x e y) e // dichiarazione della variabile z z = x+y; // assegnazione del risultato della somma // tra x e y alla variabile z

4 Operatori aritmetici OperatoreDescrizioneUsoSignificato + Somma op1+op2 Somma il valore di op1 e quello di op2 - Sottrazione op1-op2 Sottrae al valore di op1 quello di op2. * Moltiplicazione op1*op2 Moltiplica il valore di op1 con quello di op2 / Divisione op1/op2 Divide il valore di op1 con quello di op2 % Modulo op1%op2 Calcola il resto della divisione fra il valore di op1 e quello di op2. - Negazione -op1 Trasforma il valore di op1 in positivo o negativo.

5 Operatori di incremento/decremento OperatoreDescrizioneUsoSignificato ++ Incrementa loperando di 1 (prefissa) ++op Incrementa op di 1; valuta il valore dopo aver incrementato ++ Incrementa loperando di 1 (postfissa) op++ Incrementa op di 1; valuta il valore prima di incrementato -- Decrementa loperando di 1 (prefissa) --op Decrementa op di 1; valuta il valore dopo aver decrementato -- Decrementa loperando di 1 (postfissa) op-- Decrementa op di 1; valuta il valore prima di decrementato

6 Precedenza operatori ++ -- */%*/% + - Massima precedenza Minima precedenza

7 Operatori Computano una funzione Possono richiedere uno o due operandi: Operatori unari: richiedono un solo operando o Esempio: i++; Operatori binari: richiedono due operandi o Esempio: i+j

8 Espressioni aritmetiche Sono composte da variabili (o valori) e operatori aritmetici che producono come risultato un valore Esempi: (a+b+c)/3 a+b/c+d-5*e Osservazione: il tipo del risultato dipende dal tipo degli operandi Esempio: int x = 9, y = 2; int z = 0; z=x/y; // Risultato 4 float x = 9, y = 2; float z = 0; z=x/y; // Risultato 4.5

9 Cast implicito E fatto automaticamente quando un tipo memorizzato su un numero piu basso di bit e assegnato ad un tipo memorizzato su un numero piu grande di bit byte->short->int->long->float->double Esempio: int x = 5; float y; y = x; // il valore di x viene convertito // in un float e poi assegnato a y

10 Cast esplicito E necessario quando un tipo memorizzato su un numero piu grande di bit e assegnato ad un tipo memorizzato su un numero piu basso di bit Sintassi: (tipo)nomeVariabile Esempio: int x; float y=5.7; x = (int)y; // in x e memorizzato il valore 5 Osservazione: il cast esplicito effettua un troncamento!

11 Espressioni booleane Sono composte da variabili (o valori) e operatori booleani che producono come risultato un valore che puo assumere soltanto due valori: true o false Esempi: a>b a+b/c==d-5*e Gli operatori booleani confrontano due valori numerici restituendo un valore di tipo boolean come risultato

12 Operatori logici/relazionali OperatoreDescrizioneUsoSignificato == Uguale a op==op2 op1 e op2 sono uguali? != Diverso da op1!=op2 pp1 e op2 sono diversi < Minore di op1<op2 op1 e minore di op2 <= Minore o uguale a op1<=op2 op1 e minore o uguale a op2 > Maggiore di op1>op2 op1 maggiore di op2. >= Maggiore o uguale a op1>=op2 op1 e maggiore o uguale a op2

13 Operatori condizionali OperatoreDescrizioneUsoSignificato & AND op1 & op2 AND logico tra op1 e op2 | OR op1 | op2 OR logico tra op1 e op2 ! NOT !op1 op1 negato && AND (abbreviato) op1&&op2 AND logico tra op1 e op2 – abbreviato nel senso che se op1 e falso allora op2 non e piu valutato || OR (abbreviato) op1 || op2 OR logico tra op1 e op2 – abbreviato nel senso che se op1 e true allora op2 non e piu valutato

14 Istruzione if – controllo del flusso Da la possibilita di scegliere tra piu strade percorribili dopo la valutazione di una condizione if (condizione) { istruzione1; istruzione2; … } else { istruzione3; istruzione4; } SE (condizione) ALLORAistruzione1; ALTRIMENTIistruzione2; if (condizione) istruzione1; //puo non esistere lopzione else

15 if annidati if (condizione1) if (condizione2) istruzione1; else istruzione2; else if (condizione3) istruzione3; else istruzione4;

16 Esercizio 1 Dato un valore intero si chiede di stampare a video: negativo se x < 0 piccolo se 0 x < 100 medio se 100 x < 1000 grande x 1000

17 Soluzione 1 Esercizio 1 public class Numero { public static void main (String args[]) { int x=1000; if (x<0) System.out.println("negativo"); else if (x<100) System.out.println("piccolo"); else if (x<1000) System.out.println("medio"); else System.out.println("grande"); }

18 Soluzione 2 Esercizio 1 public class NumeroVariante { public static void main (String args[]) { int x=1000; if (x<0) System.out.println("negativo"); if (x>=0 && x<100) System.out.println("piccolo"); if (x>=100 && x<1000) System.out.println("medio"); if (x>=1000) System.out.println("grande"); }

19 Esercizio 2 Considerando due valori interi si chiede di calcolare: La somma dei due numeri se entrambi sono positivi Il prodotto dei due numeri se entrambi sono negativi Di stampare allo standard output i valori dei due numeri in tutti gli altri casi

20 Soluzione Esercizio 2 public class DueNumeri {public static void main (String args[]) {int x=10, y=-5; int somma = 0, prod = 1; if (x>0 && y>0) {somma = x+y;; System.out.println(La somma: + somma); } else if (x<0 && y<0) {prod = x*y; System.out.println(Il prodotto + prod); } else {System.out.println("medio"); System.out.println("grande"); }

21 Esercizio 3 Si chiede di verificare se un numero intero su 3 cifre e divisibile per 3.

22 Soluzione Esercizio 3 public class Divisibile {public static void main (String args[]) {int n = 204; int somma = 0, temp=n; somma+=temp%10; temp/=10; somma+=temp%10; temp/=10; somma+=temp%10; temp/=10; if ((somma%3)==0) System.out.println(n + divisibile per 3); else System.out.println(n + NON divisibile per 3); }


Scaricare ppt "Programmazione in Java Claudia Raibulet"

Presentazioni simili


Annunci Google