Арифметические операции, операции сравнения и логические операции в QLua (lua)

Автор записи: Дмитрий (Admin)

Qlua-основыАрифметические операции:

-- "+"   сложение
A = 2 + 3; -- в переменной A число 5
 
-- "-"   вычитание
A = 5 - 2; -- в переменной A число 3
 
-- "*"   умножение
A = 2 * 3; -- в переменной A число 6
 
-- "/"   деление
A = 6 / 3; -- в переменной A число 2
 
-- "^"   возведение в степень
A = 2 ^ 3; -- в переменной A число 8
 
-- "%"   остаток от деления
A = 5 % 2; -- в переменной A число 1
 
-- ".."  конкатенация (склеивание строк)
s = "lua";
A = "quik"..s.."csharp.ru"; -- в переменной A строка "quikluacsharp.ru"


Операции сравнения:

-- В чистом виде сравнивать имеет смысл строки со строками, числа с числами,
-- потому что выражение "5" == 5 вернет ЛОЖЬ(false),
-- чтобы сравнивать строки с числами, нужно привести сравниваемые элементы к одному типу
 
-- "<"   меньше
2 < 3 -- вернет true
 
-- "<="  меньше, или равно
2 <= 3 -- вернет true
2 <= 2 -- вернет true
 
-- ">"   больше
3 > 2 -- вернет true
 
-- ">="  больше, или равно
3 >= 2 -- вернет true
3 >= 3 -- вернет true
 
-- "=="  равно
2 == 2 -- вернет true
 
-- "~="  не равно
2 ~= 3 -- вернет true

Логические операции:

-- Логические операции возвращают в качестве результата false, или true,
-- ложью считаются только значения false, или nil, все остальные значения считаются истинными (true)
 
-- "and" логическое И вернет true, только если оба сравниваемых аргумента true
5 and 3        -- вернет ИСТИНУ(true), потому что оба аргумента числа, а числа не могут быть false, или nil
5 and (3 == 2) -- вернет ЛОЖЬ(false), потому что второй аргумент false
 
-- "or"  логическое ИЛИ вернет true, если хотя бы один из сравниваемых аргументов true
5 or (3 == 2)  -- вернет ИСТИНУ(true)
 
-- "not" логическое НЕ вернет истину, если один из аргументов false, а другой true (порядок не важен)
5 not (3 == 2)  -- вернет ИСТИНУ(true) "ИСТИННО высказывание: ИСТИНА не ЛОЖЬ"

Если у Вас появились какие-то вопросы, задайте их в комментариях под статьей !!!