Прикладной язык lua, для самых маленьких.
Posted: Thu 26 Nov, 2015 13:48
by cmd.exe
Хороший учебник по Lua на Английском
Хороший учебник по Lua на Руском
Короткое руководство по Си++
Хороший учебник по Си++ на Английском
Привет мир на луа.
Использование стандартного потока для вывода на экран.
Типы данных в луа (В данном примере они все глобальные.)
Операторы.
Операторы сравнения.
Прочие операторы.
Приоритеты:
Хороший учебник по Lua на Руском
Короткое руководство по Си++
Хороший учебник по Си++ на Английском
Привет мир на луа.
Code: Select all
--[[##########################################################################
| Example 1 |
| Hellow Lua |
############################################################################]]
print("Hello Lua")
print("Привет Луа")
print ('Hi \n some \t \\')
print ("\65\66\67\68")
print ([[
##############################################################################
| Это |
| Очень |
| Длинный |
| Вывод на экран. |
##############################################################################
]])
Использование стандартного потока для вывода на экран.
Code: Select all
io.write
(
"Hello world, from ",_VERSION,"!\n"
)
Типы данных в луа (В данном примере они все глобальные.)
Code: Select all
require("hello");
require("hello");
--[[##########################################################################
| Example 2.1-2.2 |
| Значения и типы |
############################################################################]]
a = false -- Bool Логичекое
print (type (a),a)
b = "hi" --b=hi String Строка
print (type (b),b)
c, d, e = 0, 1, 2 -- c=0 d=1 e=2 Number Число
print (type (c),c,type (d),d,type (e),e)
f = 42.22e3 -- f=42220.0 Shift Сдвиг
print (type (f),f)
g = 3.33e-1 -- g=0,333 Shift Сдвиг
print (type (g),g)
h = 0x13 -- h=19 Number Число
print (type (h),h)
i = {[0]=h, [1]=0x10} -- Table таблица
print (type (i), i, i[0], i[1])
j = {a,b,c} -- Table таблица
print (type (j), j, j[0], j[1], j[2], j[3])
k = false -- Bool Логичекое
print (a == k)
l = #b -- l=2 Number Число (Н-р Количество символов)
print (type (l),l)
d, e = e, d -- d=2 e=1 Exchange Обмен
print (d,e)
m = tostring(1112131415)--m=1112131415 String Строка
print (type(m),m)
fn = function (n) return n^10 end -- function Функция
print (type(fn),fn(2))
fl = io.open ('VarTyps.lua', 'r') -- userdata Пользовательские данные (Как ссылка)
print (type(fl),fl)
print (2+2*2) -- var=6
print ((2+2)*2) -- var=8
--Пример Thread-ов покажу чуть позже.
Операторы.
Code: Select all
a=7
b=3
print (a+b) --Сложение
print (a-b) --Вычитание
print (a*b) --Умножение
print (a/b) --Деление
print (a%b) --Остаток от деления
print (b^3) --Возведение в степень
print (-a) --Оператор отрицания
Операторы сравнения.
Code: Select all
a=4
b=7
c=
print ('')
--Вызывается Логический оператор И.
--Если оба операнды не ноль, то условие становится истинным.
print (a and b)
print (c and b)
print (b and c)
print ('')
--Вызывается логический оператор ИЛИ.
--Если какой-либо из двух операндов не равен нулю, то условие становится истинным.
print (a or b)
print (c or b)
print (a or c)
--Вызывается Логический оператор НЕ.
--Меняет логическое состояние операнда. Если условие истинно, то логический оператор НЕ перевратит в ложь.
print ('')
print (not a)
print (not c)
Прочие операторы.
Code: Select all
a=4
b=7
c="Hello lua!"
--Оператор объединения. Объединяет две строки.
print (a .. b)
--Одинарный оператор, вернуть длину строки или таблицы.
print (#c)
Приоритеты:
--[[
Unary not # - Выполняются справа налево
Concatenation .. Выполняются справа налево
Multiplicative * / % Выполняются слева направо
Additive + - Выполняются слева направо
Relational < > <= >= == ~= Выполняются слева направо
Equality == ~= Выполняются слева направо
Logical AND and Выполняются слева направо
Logical OR or Выполняются слева направо
]]
Unary not # - Выполняются справа налево
Concatenation .. Выполняются справа налево
Multiplicative * / % Выполняются слева направо
Additive + - Выполняются слева направо
Relational < > <= >= == ~= Выполняются слева направо
Equality == ~= Выполняются слева направо
Logical AND and Выполняются слева направо
Logical OR or Выполняются слева направо
]]