F# i numeri

In questa parte vedremo più in dettaglio la rappresentazione dei numeri in F#, ossia il tipo INT e il tipo FLOAT.  Il tipo int rappresenta i numeri nel campo degli interi quindi senza virgola, mentre il tipo float rappresenta il campo dei numeri razionali. Non tutte le operazioni che si fanno con gli interi si possono fare con i razionali, quindi eccovi una tabella che riassume le operazioni per ciascun tipo:

Operazione Descrizione
+ addizione intera
- sottrazione intera
* moltiplicazione intera
/ divisione intera
% modulo intero

Per il tipo int si hanno le operazioni normali di somma, sottrazione e moltiplicazione eseguite come se aveste una calcolatrice, ma bisogna prestare attenzione alla divisione perché se utilizzo il simbolo di divisione "/" il risultato sarà solo la parte intera. Per esempio se faccio 5 / 2 F# mi restituirà 2. Al contrario se utilizzo l'operatore "%" mi restituirà il resto della divisione, per esempio 120 % 100 mi restituirà 20.

Le operazioni per i numeri di tipo float sono invece:

Operazione Descrizione
+ addizione
- sottrazione
* moltiplicazione
/ divisione
** elevamento a potenza
sqrt () radice quadrata

Per il tipo float si possono usare tutte le 4 operazioni senza problemi in più abbiamo l'elevamento a potenza e la radice quadrata. L'elevamento a potenza si usa scrivendo prima il numero da elevare seguito dai 2 asterischi e dal numero della potenza ( 2.0 ** 2.0). Mentre la radice quadrata è una funzione già implementata in F# quindi basterà digitare sqrt seguito dal numero a cui ricavare la radice.

3.0 ** 2.0 ;;
val it : float = 9.0

sqrt 9.0 ;;
val it : float = 3.0