Menu
CoddyTech

Cast

Fa parte della sezione Fondamenti del percorso Lua di Coddy. Lezione 32 di 90.

Per convertire l'input in un tipo diverso, usiamo una funzione di conversione.

Per convertire una stringa in un numero, scriviamo:

var = io.read()
var = tonumber(var)

Oppure su una sola riga,

var = tonumber(io.read())

Se l'input è un numero, ad esempio 5, 4, 54, allora var conterrà un numero. Se l'input contiene un numero non valido: 5ab, bb, akt, ecc., allora tonumber() restituirà nil.

Ecco le due funzioni di conversione:

FunzioneSpiegazione
tonumber()Convertire in un numero
tostring()Convertire in una stringa

È importante usare il tipo giusto perché può influire sull’output.

La concatenazione di due stringhe darà come risultato:

"5" .. "5" = "55"

La somma di due numeri dà come risultato:

5 + 5 = 10

Lua converte automaticamente anche le stringhe numeriche nelle operazioni aritmetiche: "5" + 5 dà 10. Convertire con tonumber() è comunque la scelta più chiara e ti permette di controllare l'input, perché restituisce nil quando il testo non è un numero.

challenge icon

Sfida

Principiante

In questa sfida lavorerai con più input ed eseguirai dei calcoli.

Come ricevere più input:

var1 = io.read()  -- First input
var2 = io.read()  -- Second input

Il tuo compito:

  1. Leggi il primo numero dall'input e memorizzalo in una variabile
  2. Leggi il secondo numero dall'input e memorizzalo in un'altra variabile
  3. Converti entrambe le variabili nel tipo number (per eseguire calcoli numerici)
  4. Calcola il prodotto di questi due numeri
  5. Stampa il risultato

Esempio:

Se gli input sono 2 e 4.5, il tuo programma dovrebbe restituire 9

Ricorda: Ogni caso di test contiene esattamente due input, uno dopo l'altro.

Provalo tu

quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore Lua online