Walter Mulas
1
Numeri Interi e calcolo della Somma
INTRODUZIONE DEI NUMERI INTERI
NELL’INFORMATICA E NEL RUBY
Walter Mulas
In Informatica, è possibile rappresentare i valori numerici
(ovviamente il calcolatore li leggerà in binario mentre noi in
caratteri che conosciamo naturalmente). I numeri non servono
solamente a essere stampati, ma anche per eseguire dei calcoli
matematici. Infatti, il Ruby ha delle librerie specifiche per i
calcoli numerici.
La cosa importante da sapere è che non bisogna mai
confondere i numeri del calcolatore con quelli della
matematica! Semplicemente per il fatto che il calcolatore ha
una capacità di memoria limitata, quindi è impossibile
rappresentare tutti i numeri della matematica, dato che sono
infiniti!
In queste diapositive rappresenteremo i numeri Interi e
qualche operazione di somma. Useremo due ambienti
lavorativi indipendenti tra di loro: Interactive Ruby
(ambientato nel sistema operativo MS-DOS) e NetBeans 6.5
(piattaforma dove si possono creare programmi con linguaggi
di programmazioni differenti).
2
I NUMERI INTERI CON RUBY
•
Walter Mulas
•
Nel linguaggio Ruby, la classe degli Interi si
divide in due sottoclassi:
Fixnum, insieme dei valori Interi che sono
rappresentati da un numero fisso di bit (16 bit o
32 bit)
Bignum, insieme dei valori Interi che non hanno
limitazione sul numero di bit (la definizione è
valida solo se il calcolatore ha una certa capacità
di memoria libera).
Per conoscere la classe di appartenenza di un
numero Intero usiamo il metodo class
3
CLASSI DI APPARTENENZA DEGLI INTERI

Walter Mulas
Esempio:
 32.class
12345678901234567890.class
4
SOMMA CON GLI INTERI
Walter Mulas
In queste diapositive vedremo alcuni esempi di rappresentazioni
dei numeri Interi:
Esempio della somma di due numeri:
2+7=9
Nell’ambiente Interactive Ruby:
E digitando ‘Invio’ dopo aver scritto l’operazione che vogliamo fare,
l’applicazione ci restituisce il risultato:
5
OSSERVAZIONE
Walter Mulas
Come avete visto, nell’Interactive Ruby bastava
scrivere 2+7 per fare 9. E’ come se avessimo
scritto implicitamente nella codificazione in
linguaggio Ruby: puts 2+7.
Secondo l’autore, l’Interactive Ruby è utile
solamente per verificare se alcune istruzioni che
noi codifichiamo hanno esito positivo dal punto di
vista semantico e/o della sintassi, senza vincoli di
programmazione (in poche parole, per perderci
un po’ di tempo).
Nelle prossime diapositive, svilupperemo invece
un programma che svolge il calcolo della somma
tra due numeri Interi nell’ambiente di lavoro
Netbeans 6.5
6
CALCOLO DELLA SOMMA NELL’AMBIENTE
NETBEANS
Dopo aver creato il file, andiamo a codificare il programma. Useremo i
metodi ‘gets’ e ‘puts’ per l’input e per la stampa degli Interi.
7
Walter Mulas
IMPORTANTE: Il metodo ‘gets’ permette solamente l’inserimento dalla
tastiera di un valore di tipo String. E’ possibile comunque convertire un
carattere numerico in un valore Int (se il carattere della stringa non è
alfabetico, il programma restituisce un valore numerico uguale a 0).
Osserveremo in questa immagine il corpo del codice con il metodi di
conversione da un valore di tipo String in un valore Int.
DOPO AVER SCRITTO IL CODICE MANDIAMOLO
IN ESECUZIONE IL PROGRAMMA..
Walter Mulas
8
OSSERVAZIONE
Walter Mulas
Come abbiamo visto, il programma ha eseguito
correttamente il calcolo della somma. Il
programma ha implicitamente convertito i nostri
valori numeri dal tipo String in Int, permettendo
di calcolarci la somma. Il metodo di conversione
all’interno del nostro programma è il “gets.to_i”.
Questo metodo, oltre a restituire al programma
un valore dalla tastiera, lo converte in Int.
Come esso, esistono altri simili metodi di
conversione. Nella prossima diapositiva vedremo
invece cosa succederà se inseriamo un carattere
alfabetico invece di un carattere numerico in
input durante l’esecuzione.
9
ESECUZIONE CON INSERIMENTO DI UN
VALORE ALFABETICO…
Inseriamo nel secondo addendo ‘f’:
Walter Mulas
E calcoliamo la somma:
10
OSSERVAZIONE
Walter Mulas
Il metodo di conversione non riesce a convertire
un carattere non numerico. Quindi il programma
restituirà un valore nel secondo addendo pari a 0.
La somma è rappresentata quindi come 2+0=2.
Stesso risultato vale anche se la stringa ha come
valore un insieme di caratteri sia numerici che
alfabetici.
Esempio:
“k”  0
“k123”  0
11
CONCLUSIONE
Walter Mulas
In questo file, abbiamo visto come si calcolano i
valori numeri di tipo Int. Ma si possono fare per
valori diversi da Int, come i Float (numeri che
comprendono i decimali es: 1.23) con diverse
operazioni matematiche come la differenza (che è
inclusa comunque nel calcolo della somma
quando si inseriscono valori negativi in input), la
moltiplicazione e la divisione. Esercitatevi prima
con Interactive Ruby per prendere confidenza con
le operazioni (si può fare anche col NetBeans) e
poi successivamente scrivere un programma che
svolge calcoli matematici. Buon lavoro!!!
12
Scarica

Calcolo della Somma