Menu
Coddy logo textTech

Conversión de tipos (Cast)

Parte de la sección Fundamentals del Journey de Lua de Coddy — lección 32 de 90.

Para convertir la entrada a un tipo diferente, necesitamos realizar un cast.

Para convertir una cadena a un número, escribiremos:

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

O en una sola línea,

var = tonumber(io.read())

Si la entrada es un número, es decir, 5, 4, 54, entonces var contendrá un número. Si la entrada contiene un número no válido: 5ab, bb, akt, etc., entonces tonumber() devolverá nil.

Aquí hay una tabla que muestra cómo realizar conversiones a diferentes tipos:

ConversiónExplicación
tonumber()Convertir a un número
tostring()Convertir a una cadena

Es importante usar el tipo correcto porque puede afectar el resultado.

La concatenación de dos cadenas dará como resultado:

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

Sumar dos números dará como resultado:

5 + 5 = 10

challenge icon

Desafío

Principiante

En este desafío, trabajarás con múltiples entradas y realizarás cálculos.

Cómo recibir múltiples entradas:

var1 = io.read()  -- Primera entrada
var2 = io.read()  -- Segunda entrada

Tu tarea:

  1. Lee el primer número de la entrada y almacénalo en una variable
  2. Lee el segundo número de la entrada y almacénalo en otra variable
  3. Convierte ambas variables al tipo number (para cálculos numéricos)
  4. Calcula la multiplicación de estos dos números
  5. Imprime el resultado

Ejemplo:

Si las entradas son 2 y 4.5, tu programa debería mostrar 9.0

Recuerda: Cada caso de prueba contiene exactamente dos entradas, una tras otra.

Hoja de referencia

Conversión de tipos (Casting) en Lua:

-- Convert string to number
var = tonumber(io.read())

-- Convert to string
var = tostring(io.read())

-- tonumber returns nil for invalid input
var = tonumber("abc")  -- var is nil

Importante: Concatenar cadenas las une, mientras que sumar números realiza una operación aritmética:

"5" .. "5" = "55"  -- String concatenation
5 + 5 = 10          -- Numeric addition

Múltiples entradas:

var1 = io.read()
var2 = io.read()

Pruébalo tú mismo

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentals