Основы Lua простыми словами: пишем первые алгоритмы

В этой статье разберём три основы любого языка программирования — условия, циклы и функции. Никакой теории, только практические примеры, которые можно сразу запустить и понять. Идеально для тех, кто делает первые шаги в разработке.

РазработкаLua

6 мин

Lua — это простой и мощный язык программирования, который отлично подходит для начинающих. Сегодня разберём три кита алгоритмов: условия, циклы и функции. Без сложных слов, только практика!

Условия: учим программу принимать решения

Представьте, что вы говорите другу: "Если на улице дождь, возьми зонт". Компьютеру нужно объяснять точно так же!

Простое условие if

local погода = "дождь"

if погода == "дождь" then
    print("Берём зонт!")
end

Программа проверяет: если погода равна "дождь", то выводит сообщение.

Условие с альтернативой if-else

local возраст = 16

if возраст >= 18 then
    print("Можно водить машину")
else
    print("Ещё рано, нужно подрасти")
end

Если возраст больше или равен 18, программа выведет одно сообщение, иначе — другое.

Несколько вариантов elseif

local баллы = 85

if баллы >= 90 then
    print("Оценка: отлично!")
elseif баллы >= 70 then
    print("Оценка: хорошо")
elseif баллы >= 50 then
    print("Оценка: удовлетворительно")
else
    print("Нужно подтянуть знания")
end

Программа проверяет условия по порядку и выполняет первое подходящее.

Циклы: повторяем действия

Зачем писать один и тот же код 100 раз, если можно сказать программе: "Повтори это 100 раз"?

Цикл while — пока условие верно

local счётчик = 1

while счётчик <= 5 do
    print("Повторение номер " .. счётчик)
    счётчик = счётчик + 1
end

Программа будет повторять действие, пока счётчик не станет больше 5. Результат:

Повторение номер 1
Повторение номер 2
Повторение номер 3
Повторение номер 4
Повторение номер 5

Цикл for — когда знаем сколько раз повторять

-- От 1 до 10
for i = 1, 10 do
    print("Число: " .. i)
end

-- От 10 до 1 с шагом -1
for i = 10, 1, -1 do
    print("Обратный отсчёт: " .. i)
end

Это самый удобный цикл, когда точно знаем количество повторений.

Цикл repeat-until — хотя бы один раз выполнится

local число = 0

repeat
    print("Число: " .. число)
    число = число + 1
until число > 3

Отличие от while: этот цикл сначала выполняет действие, а потом проверяет условие.

Практический пример: таблица умножения

local число = 7

print("Таблица умножения на " .. число)
for i = 1, 10 do
    print(число .. " × " .. i .. " = " .. число * i)
end

Результат:

7 × 1 = 7
7 × 2 = 14
7 × 3 = 21
...и так далее

Функции: создаём свои команды

Функция — это как рецепт. Записали один раз, используем много раз.

Простая функция

function поздороваться()
    print("Привет, мир!")
end

-- Вызываем функцию
поздороваться()

Функция с параметрами

function поздороваться_с_именем(имя)
    print("Привет, " .. имя .. "!")
end

поздороваться_с_именем("Алексей")
поздороваться_с_именем("Мария")

Результат:

Привет, Алексей!
Привет, Мария!

Функция с возвратом значения

function сложить(a, b)
    return a + b
end

local результат = сложить(5, 3)
print("5 + 3 = " .. результат)  -- Выведет: 5 + 3 = 8

Практический пример: проверка чётности

function чётное_или_нечётное(число)
    if число % 2 == 0 then
        return "чётное"
    else
        return "нечётное"
    end
end

print("10 — это " .. чётное_или_нечётное(10))
print("7 — это " .. чётное_или_нечётное(7))

Комбинируем всё вместе

Настоящая сила программирования — когда мы соединяем условия, циклы и функции!

-- Функция проверяет, простое ли число
function простое_число(n)
    if n < 2 then
        return false
    end
    
    for i = 2, n - 1 do
        if n % i == 0 then
            return false
        end
    end
    
    return true
end

-- Найдём все простые числа от 1 до 20
print("Простые числа от 1 до 20:")
for число = 1, 20 do
    if простое_число(число) then
        print(число)
    end
end

Эта программа выведет: 2, 3, 5, 7, 11, 13, 17, 19

Полезные советы для начинающих

1. Делайте отступы — код легче читать:

-- Плохо
if x > 0 then
print("Положительное")
end

-- Хорошо
if x > 0 then
    print("Положительное")
end

2. Называйте переменные понятно:

-- Непонятно
local a = 25

-- Понятно
local возраст_пользователя = 25

3. Комментируйте код:

-- Вычисляем площадь круга
local радиус = 5
local площадь = 3.14 * радиус * радиус

4. Начинайте с простого — сначала напишите код без функций, потом вынесите повторяющиеся части в функции.

Приходите в Кодик — здесь вы найдёте структурированные курсы по программированию для новичков. Мы учим не просто синтаксису, а настоящему мышлению программиста, с практическими проектами и реальными примерами.

Присоединяйтесь к нашему телеграм-каналу — это дружное сообщество разработчиков, где можно задать вопрос, поделиться своим кодом, найти единомышленников и быть в курсе новых материалов. Программирование становится намного проще, когда есть с кем обсудить трудности и поделиться победами!

Начните своё путешествие в мир программирования вместе с Кодиком! 🚀

Комментарии