Sei sulla pagina 1di 5

nil: Non ha nessun valore (Nulla)

boolean: 2 Valori (true/False)


number: Un numero qualsiasi
string: Serie di caratteri che vengono racchiusi da (Virgolette o apostrofi) ( " )
( ' )
function: un comando che viene eseguito function hello() print("Hello world") end
userdata: Variabili di C (linguaggio di Programmazione) in lua e rappresenta la
memoria (RAM)
thread: Hanno la capacità di eseguire codice ASINCRONO al file originale
table: Variabili che possoono contenere Dati o Funzioni (Chiamati anche array)
print: Stampare una stringa
-- DEFINIRE UNA VARIABILE --

var <Nome variabile> = <qualunque parola> (var shiba = "leonfi") Usata al di fuori
del programma originale, Variabiile pubblica
local <Nome variabile>_local = <qualunque parola> Con il local rendiamo la
variabile usufruibile solo da questo programma

-- Condizioni --
-- 2.1 Operazioni --
+ = Addizione (2 + 2= 4)
- = Sottrazione (2 - 2= 0)
* = Moltiplicazione (2 * 2= 4)
/ = Divisione (3 / 4 = 0.75) [I decimali si scrivono col punto]
// Divisione arrotondata (3 / 4 = 1)
% = Da il resto della divisione (Modulo) ( 3 / 4 = 0)
^ = Esponente (2 ^ 6 = 64)

-- 2.2 Operatori Bitwise e numeri binari --

4 bit ---> 0000


I bit funzionano ad 2 ^ i Quindi il massimo che possiamo ottenere da un 4 bit è 15

Come contare in binario

0000 -> 0 0100 -> 4 1000 -> 8 1100 -> 12 Quando noi applichiamo 9 + 1, cosa
succede? Diventa 10.
0001 -> 1 0101 -> 5 1001 -> 9 1101 -> 13 Dunque sul binario se si prova a
sommare 1 + 1 = 0 con riporto
0010 -> 2 0110 -> 6 1010 -> 10 1110 -> 14
0011 -> 3 0111 -> 7 1011 -> 11 1111 -> 15 0 0 0 0 0 Corrisponde per quando
dobbiamo fare un calcolo (CALCOLO)*
4 3 2 1 0

-- Addizione con i numeri binari --

0101 +
0110 =
-----
1011 --> 11

-- Conversione da binario a decimale --


(CALCOLO)*
10110 ---> 1 x 2^4 + 1 x 2^2 + 1 x 2^1

Operatori bitwise
0 -> Falso
1 -> Vero
& -> and
| -> or
>> -> Right shift
<< -> Left shift

--and
______ 0 * 1 = 0
i1 --| \ i1 * i2 = out
| | -- output 1 * 1 = 1
i2 --|_____/

--or
______
i1 --\ \ 0 + 1 = 1
| |-- output i1 + i2 = out
i2 --/_____/ 1 + 1 = 0

--Right shift (Spostamento di bit verso destra)

0100101 >> 2 --> 0001001

--Left shift (Spostamento di bit verso sinistra)

0100101 << 2 --> 0010100

-- CAPITOLO 3 --

--Operazioni di Condizione--

== --> Ugualizanza
= --> Diverso
< --> Minore
> --> Maggiore
<= --> Minore o uguale
>= --> Maggiore o Uguale

--Operatori logici--

or
and

10 or 20 ---> 10
nil or "a" ---> "a"

false and nil ---> false


10 and 20 ---> 20

--Condizioni--

if <condizione> then
(se) (allora)
Istruzioni
end
(Fine)

If a == 0 then
print("A equivale a 0")
end
--CAPITOLO 3 CICLI--

--Ciclo while--

while (condizione) do
(codice)
end

int i = true

while i do
print("Hello, world!");
end

--Ciclo for--
(Opzionale)
for (inizializzazione), (massimo/minimo), [incremento] do
(codice)
end

For i = 0, 10 do
print(i)
end

for i = 0, 10, 2 do
print
end

for i = 10, 0, -1 do
print (i)
end

--Ciclo Repeat--

repeat
(codice)
until (condizione)

repeat
print("Hello, world!")
until true

--Capitolo 4 Vettori--

Nomi 3 spazi

0 1 2
_______________________________
| | | |
|"Alberto"|"Giovanni"|"Piero"|
_|_________|__________|_______|_

nomi = {} <--Definizione di tabella--

nomi[0] = "Alberto"
nomi[1] = "Giovanni"
nomi[2] = "Piero"

print("Il primo valore del vettore è " .. nomi[0])


Punteggio
"Bob" "Ale" "Leo"
__________________
| | | |
| 100 | 50 | 340 |
|_____|____|_____|

punteggi = {} <--Definizione di tabella--

punteggi["Bob"] = 100
punteggi["Ale"] = 50
punteggi["Leo"] = 340

print("Il punteggio di Bob è: " .. punteggi["Bob"])

--Capitolo 4.1 Table Functions--

(opzionale)
table.concat(table[, sep, i, j])

nomi = {"Alessandro", "Roberto", "Giovanni"}

table.concat(nomi) ---> "AlessandroRobertoGiovanni"

table.concat(nomi, ",") ---> "Alessandro,Roberto,Giovanni"


table.concat(nomi, ", ") ---> "Alessandro, Roberto, Giovanni"

table.concat(nomi, ", ", 1, 2) ---> "Roberto, Giovanni"

table.insert(table, [pos], valore)

nomi = {"Filippo", "Salvatore", "Rebecca"}

nomi[#nomi] = "Simone"

Per indicare la grandezza di un vettore si usa il #

print("La grandezza del vettore punteggio equivale a " .. #punteggi)

table.insert(nomi, "Simone") ---> {"Filippo", "Salvatore", "Rebecca", "Simone"}


table.insert(nomi, 1, "Simone") ---> {"Filippo", "Simone", "Salvatore",
"Rebecca"}

(opzionale)
table.remove(table, [pos])

nomi = {es. table.insert}

table.remove(nomi) --> {"Filippo", "Salvatore"}


table.remove(table, 1) --> {"Filippo", "Rebecca"}

table.masx(table) --> Equivalente al # SOLAMENTE calcola soltanto gli indici

table.sort(table, [cond])

nomi = {es. table.insert}

table.sort(nomi) --> {"Filippo", "Rebecca", "Salvatore"}


table.sort(nomi, function(a, b) return a > b end)

--AGGIUNTA FOR LOOP E VETTORI--

for index, value in pairs(Vettore) do


print(index .. ": " .. value)
end

pairs(Vettore) -- Prende tutti gli indice del vettore


ipairs(Vettore) -- Prende gli indice solo numerici del vettore

--CAPITOLO 5 FUNZIONI--

--DEFINIZIONE--
function <nome_funzione>([Argomenti])
/* Codice */
end

--CHIAMATA--
<nome_funzione>([Argomenti])

--ESEMPIO--

function somma(add1, add2)


return add1 + add2
end

print(somma(2, 2))

local ver = {
aereo = 10
}

function ver.flare()
print(ver.aereo)
end

function ver:holy() --> function ver.holy(self)


print(self.aereo)
end

Potrebbero piacerti anche