En aquest tema, aprendrem sobre les variables i els tipus de dades en Lua. Les variables són fonamentals en qualsevol llenguatge de programació, ja que ens permeten emmagatzemar i manipular dades. Lua és un llenguatge dinàmicament tipat, el que significa que no cal declarar el tipus de dada d'una variable explícitament.

Continguts

Declaració de Variables

En Lua, les variables es poden declarar simplement assignant-los un valor. No cal especificar el tipus de dada.

-- Declaració de variables
local x = 10
local y = "Hola, món!"
local z = true

Variables Locals i Globals

  • Variables locals: Són accessibles només dins del bloc de codi on es declaren. Es declaren amb la paraula clau local.
  • Variables globals: Són accessibles des de qualsevol part del programa. Es declaren sense la paraula clau local.
-- Variable global
a = 5

-- Variable local
local b = 10

Tipus de Dades

Lua té diversos tipus de dades bàsics:

  1. nil: Representa una absència de valor.
  2. number: Representa números (enters i de punt flotant).
  3. string: Representa cadenes de text.
  4. boolean: Representa valors lògics (true o false).
  5. table: Representa estructures de dades complexes.
  6. function: Representa funcions.
  7. userdata: Representa dades definides per l'usuari.
  8. thread: Representa fils d'execució independents.

Exemples de Tipus de Dades

-- nil
local a = nil

-- number
local b = 42
local c = 3.14

-- string
local d = "Hola, món!"

-- boolean
local e = true
local f = false

-- table
local g = {1, 2, 3, "quatre"}

-- function
local h = function() print("Això és una funció") end

Conversió de Tipus

Lua permet convertir entre diferents tipus de dades utilitzant funcions de conversió.

Funcions de Conversió

  • tonumber(): Converteix una cadena o un altre tipus de dada a un número.
  • tostring(): Converteix un número o un altre tipus de dada a una cadena.
local num = "123"
local converted_num = tonumber(num) -- Converteix la cadena a número

local str = 456
local converted_str = tostring(str) -- Converteix el número a cadena

Exemples Pràctics

Exemple 1: Variables i Tipus de Dades

-- Declaració de variables
local name = "Lua"
local version = 5.4
local is_dynamic = true

-- Imprimir valors
print("Llenguatge: " .. name)
print("Versió: " .. version)
print("És dinàmic: " .. tostring(is_dynamic))

Exemple 2: Conversió de Tipus

-- Conversió de cadena a número
local str_num = "100"
local num = tonumber(str_num)
print(num + 50) -- Sortida: 150

-- Conversió de número a cadena
local number = 200
local str = tostring(number)
print("El número és: " .. str) -- Sortida: El número és: 200

Exercicis

Exercici 1: Declaració de Variables

Declara tres variables: una cadena, un número i un valor booleà. Imprimeix els seus valors.

Exercici 2: Conversió de Tipus

Converteix una cadena que conté un número a un tipus de dada numèric i suma-li 10. Després, converteix el resultat a una cadena i imprimeix-lo.

Exercici 3: Taula de Tipus de Dades

Crea una taula que contingui diferents tipus de dades (cadena, número, booleà). Imprimeix cada element de la taula.

Solucions

Solució 1: Declaració de Variables

local cadena = "Aprenent Lua"
local numero = 2023
local boolea = false

print(cadena)
print(numero)
print(boolea)

Solució 2: Conversió de Tipus

local str_num = "30"
local num = tonumber(str_num)
local resultat = num + 10
local str_resultat = tostring(resultat)

print("El resultat és: " .. str_resultat) -- Sortida: El resultat és: 40

Solució 3: Taula de Tipus de Dades

local taula = {"Hola", 123, true}

for i, v in ipairs(taula) do
    print(v)
end

Conclusió

En aquesta secció, hem après com declarar variables i els diferents tipus de dades disponibles en Lua. També hem vist com convertir entre diferents tipus de dades i hem practicat amb alguns exemples i exercicis. Ara estem preparats per avançar cap als operadors en Lua.

© Copyright 2024. Tots els drets reservats