Sei sulla pagina 1di 3

Programmazione lez 3 7/10/19

con double intendiamo solo numeri razionali perchè non possiamo indicare i reali essendo alcuni
di essi infiniti. anche per i razionali questa cosa vale perchè ad esempio indichiamo un
approssimazione di 10/3 e così via.

quindi anche pi ad esempio viene approssimato e quindi esprimibile sotto forma di un p/q
insomma.

NB: ricordati che su java nel codice scriverai i double col punto, mentre digiti l'input da tastiera
usi la virgola essendoci il layout italiano.

possiamo anche scrivere i double in notazione scientifica come per esempio 3,9e3; cioè 3,9 *
10^3.

Abbiamo parlato di byte, short, int, long, float, double. La differenza sta nel numero di celle di
memoria occupate da ciascuno, da meno a più insomma. NB: il float è in virgola mobile ma
occupa meno celle di memoria di double.

NB: ricordati che non puoi associare ad una variabile più piccola, che occupa meno celle di
memoria, con una più capiente. Vi è una incompatibilità di tipo, mentre invece da float a
qualsiasi altra cosa più piccola la conversione viene eseguita automaticamente.

Come se tutti le variabili fossero dei sottoinsiemi contenuti in double.

Abbiamo fatto i 'char'. Ricordati che bisogna indicarli tra apici singoli e non doppi apici.

Se assegno un carattere ad una variabile di tipo intera verrà memorizzata la codifica in


Unicode/ascii del carattere. ad esempio int numero = 'h' stamperà se richiesto 104.

Il contrario l'opposto il compilatore darà un errore.

Stiamo guardando gli esempi pari pari del libro Programmazione con Java o programmazioen di
base insomma.

Il 'cast' è indicare tra parentesi il tipo di dato a cui voglio arrivare

num = (int) razionale;

ovviamente si perde il numero dopo la virgola.

Esistono due tipi di cast.

esplicitp se indico il tipo tra le parentesi, come trasformare double ad int.

a volte è implicito perchè questa convesione la fa automaticamente java.

ad esempio double razionale = intero. E' equivalente a scrivere double razionale = (double)
intero. Questo perché intero è un sottoinsieme di double

Java non accetta '0', '1', come valori di una variabile booleana a differenza di altri linguaggi di
programmazione.

Studiati comandi bash per capire come aprire un progetto java. bisogna arrivare alla caretella in
cui è contenuto.

Slide varie.

Il $ si può utilizzaare negli identificatori ma è una scelta abbastanza inusuale

lo scope di una variabile è la parte di programma in cui una variabile è visibile ed utilizzabile.
Quindi non ci possono essere due variabili locali con lo stesso nome insomma.

Se supero un numero limite di una variabile, es 32767 per uno short, e gli aggiunto + 1, mi dà
errore ovviamente, ma se forzo comunque con una conversione utilizzando un cast, mi darà
come risultato -32768. Bisogna immaginarli come ad orologio, una volta finiti si ricomincia dai
più grandi dei negativi.

nei float, se io scrivo float virgola = 3.5, il sistema mi dà errore perchè pensa che 3.5 sia un valore
double, quindi devo applicare una 'f' alla fine. float virgola = 3.5f;

--

Dichiarazione di costanti con 'final'.

Se proviamo a modificare la costante, il sistema da errore dicendo che non può assegnare un
valore ad una variabile di tipo final.

Abbiamo dichiarato la variabile final al di fuori del main, se la dichiariamo al suo interno ci dà
errore. Non è possibile dichiarare una variabile di tipo public all'interno del main. se tolgo il
'public' lo posso fare invece.

tolto il public è quindi visibile ed utilizzabile solo dal main.

--

Operazioni binarie. nelle divisioni tra interi può avvenire un cast implicito se normalmente il
risultato dovrebbe essere un double, es 3 / 2, che risulta '1'.

nella stampa, (quindi dentro un syso) se sommiamo un double con un int il risultato verrà in
double. Ordina l'operazione come un double + int che è legittima.

Se faccio lo stesso creando una variabile int risultato = numero + razionale, ottengo un errore

Attenzione che il cast si riferisce al valore successivo. Quindi bisogna usare le parentesi per
applicarlo a delle espressioni.
Il modulo '%' si usa per capire principalmente se un numero è pari o dispari.