1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Туториал [Lua] Учимся вместе или "Хэппи Луа"

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем konfyciu98, 31 окт 2013.

?

Продолжать или не стоит этого делать?

  1. Да, давай!

    64 голосов
    81,0%
  2. Не, не надо!

    4 голосов
    5,1%
  3. Ну можно еще попробовать, а дальше посмотрим...

    11 голосов
    13,9%
  1. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Стандартные функции Lua.

    В Lua, так же как и во всех ЯП, есть функции и операторы, которые уже "встроены" в язык.
    Ранее мы пользовались двумя операторами: print() и type(). Сейчас мы разберем еще несколько подобных примеров, а именно:
    1. io.write();
    2. io.read();
    3. math.sqrt();
    Это 3 самых простых примера, с одним из которых вы уже встречались.


    io.write();

    Функция io.write() равна оператору print()!
    Код:
    print("Можно записать так!");
    io.write("А можно и так!");
    

    io.read();

    Функция io.read() позволяет записывать данные в переменную при помощи клавиатуры или другого любого средства ввода.
    Код:
    name = io.read();
    io.write("Меня зовут "..name);
    
    Это самый простой пример функции io.read(). Повторите его у себя, изменяя название переменной и смысл(не "Меня зовут", а "Его зовут").
    Вот еще один пример:
    Код:
    io.write("Как зовут твоего пони?");
    ponni = io.read();
    print("Моего пони зовут "..ponni);
    
    С данной функцией можно проделать один злодейский план трюк.
    Код:
    print("Каков ваш возраст, сударь?");
    pya = io.read("*n");
    io.write(pya..", а чё?");
    
    Как вы думаете, что произойдет? 5..4..3..2..1 А произойдет вот что! В переменную pya возможно будет записать данные только типа number(тобешь цифры)!
    Вот попробуйте записать в переменную с такими "добавками" не цифры. У вас вылезет коварная ОБИШКА!

    math.sqrt();

    Это функция вычисления квадратного корня.
    Код:
    kopeHb_kopeHb_MotHerFucKer = math.sqrt(16);
    print(kopeHb_kopeHb_MotHerFucKer)
    
    Вам выведет 4.

    Ааааа, я совсем забыл! Сейчас на секунду отвлечемся. Lua чувствителен к регистру! Переменные rich и ricH - совершенно разные!!! Это же дело и с операторами\функциями! PriNt("std") и print("std") - очень разные штучки! Первая выдаст ошибку, ибо не правильно написал! Так что обратите на это внимание и проверьте на деле!

    А теперь обратно к корням.
    Больше про них нечего рассказывать. Нууу, можно еще вот такой примерчик, чтоб знали:
    Код:
    x = 25;
    j = math.sqrt(x);
    io.write(j);
    
    Список всех функция и операторов вы можете посмотреть ТУТ, так же к ним есть описание(на инглише, но не беда).
    А домашнее задание таково:
    Запишите в переменные имя, ник, примерное кол-во волос на голове, кол-во глаз и зубов. Выведете их, а затем вычислите квадратный корень из волос, зубов. И выведете. Удачи! :)
     
    Сникерсни, BedinINCORP, Hephest и ещё 1-му нравится это.
  2. BedinINCORP

    BedinINCORP Старожил Пользователь

    Баллы:
    123
    x1=BedinINC
    x2=10000
    x3=2
    x4=32
    print(math.sqrt(x2+x3+x4))
    Домашку лучше сложнее давать, реально =).
    К примеру, работа с круговой диаграммой. Дам пример из олимпиады по информатике, простейшее задание из 5.
    Да, пожалуй так:
    Дан круг, фортуны. На нём есть, к примеру, 4 деления (ну так проще, ведь дело только в алгоритме). Измерить, какое из делений выпадало чаще всего таким образом: сначала вводишь кол-во раз, сколько ты его крутил, а потом вводишь градусы, на которые он поворачивался. Выводом будет являться название одного деления, или нескольких, при условии, что кол-во их выпадений было равным.
     
  3. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Я теперь сначала тебе буду скидывать урок, а ты к нему домашку, вот так вот! ;)
    Мы в еще не проходили if then else :D ну я то прошел
     
    Hephest нравится это.
  4. Hephest

    Hephest Старожил Пользователь

    Баллы:
    153
    Skype:
    hephest1904
    Уже месяц прошел, а уроков нету :С
     
  5. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Мне бы помощника. А то я хочу много о чем рассказать, а вот о чем сначала, то не знаю :( Да и задания у меня плохие выходят, но это не такая проблема, легко решается. Нужен тот, кто бы меня двигал по плану! Желательно, чтоб это был читатель, ведь как не читателю знать, что он желает увидеть.
     
  6. Hephest

    Hephest Старожил Пользователь

    Баллы:
    153
    Skype:
    hephest1904
    Хорошо, дам подсказку - следующий урок присвятить нужно циклам и логическим операторам (и, или, не, иначе)
     
  7. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    А тип table сами разберете?
    Я думал, что сначала надо пройтись по всем типам, а потом к циклам и т.д.
     
  8. Hephest

    Hephest Старожил Пользователь

    Баллы:
    153
    Skype:
    hephest1904
    А, ну тогда в таком случае лучше типы разобрать, верно подметил ;)
     
  9. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    жди в ближайшие 3 дня table
     
    MineMan910, Сникерсни и Hephest нравится это.
  10. Hephest

    Hephest Старожил Пользователь

    Баллы:
    153
    Skype:
    hephest1904
    Жду с радостью!;)

    З.Ы. Оцените новую аву, коты в тренде:good:
     
  11. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Тип table.

    Тип table в Lua - самый обыкновенный массив!

    Как записывается сам тип:
    Код:
    table_page = {booleans="true or false",4}; -- первый способ создания массива
    table_page_two = {}; -- начало второго способа создания массива
    table_page_two[3] = "AIE HE IAO"; -- наполняем массив, созданный вторым способом
    table_page_two["party"] = "PARTY HARD!!!"; -- наполняем...
    table_page_two[4] = 696; -- наполняем
    -- Устраиваем "проверочку" нашим массивам
    print("Сначала массивы \"table_page_two\"");
    print(table_page_two[3]);
    print(table_page_two["party"]);
    print(table_page_two[4]);
    print("Теперь массивы \"table_page\"");
    print(table_page["booleans"]);
    print(table_page[1]);
    print("Теперь все вместе!");
    print(table_page["booleans"]..table_page[1]..table_page_two[3]..table_page_two["party"]..table_page_two[4]);
    
    Если вы все осмыслили, съели пончик и запили все это соком, то браво! Урок не будет большим. По типу долго разбирать нечего, а вот действия с таблицами пойдут вам на самостоятельное развитие! Ищем тут table.concat, table.insert, table.pack и т.д. Заходим в гугл переводчик, если плохо с английским, разбираемся и радуемся!
    P.S. Призываю @
    BedinINCORP (с тебя олимпиадное задание)
     
    Dereku и Hephest нравится это.
  12. FedorNogopletov

    FedorNogopletov Старожил Пользователь

    Баллы:
    173
    Я видел на фортран базу данных для молокозавода :coffee:
     
  13. KriBetko

    KriBetko Старожил Пользователь

    Баллы:
    153
    Skype:
    kribetko
    Не люблю некропост, но в этот раз он полезен
     
    FirePoint и FedorNogopletov нравится это.
  14. slenky

    slenky Старожил Пользователь

    Баллы:
    173
    Какое Lua имеет отношение к Bukkit на джаве?
     
    Последнее редактирование модератором: 12 окт 2023
  15. danilko

    danilko Старожил Пользователь

    Баллы:
    103
    1. Есть разные плагины под bukkit, в которых используется lua(google в помощь)
    2. Когда-то, где-то видел что-то вроде движка для плагинов под bukkit на lua (типа плагины писать на lua)
    3. Мод ComputerCraft (или как-то так называется)
    P.s. По 2 пинкту. Есть плагин lukkit, который позволяет простенькие плагины писать на lua, но это не тот, что я вспомнил...
     
  16. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Я больше согласен со slenky, я сейчас даже не понимаю, зачем создавал такую тему :cry:
     
  17. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Так что тебе мешает зайти в поисковик и там найти материал :)
     
  18. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Бросил это дело) Java лучше, она как рыжая милая девочка, которая иногда превращается в бестию! Мммм
     
  19. Dereku

    Dereku Старожил Пользователь

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Хорош смотреть прон с участием байткода java.
     
  20. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Она похожа на девочку с твоей авки :3
    Немножко поднимем тему.
    АПП
    Если Вы все еще что-то помните из этого курса или углубились дальше, то предлагаю Вам развлечься!
    Как Вы смотрите на написание под Android и iOS? Если положительно, то продолжайте читать!

    Corona SDK предлагает кодерам Lua погрузиться в написание свои приложений для Android и iOS. Angry Birds создается за один вечер. Corona SDK рассчитана на 2D графику, включает в себя уже готовую физику. На сайте вы можете найти туториалы, которые все прекрасно рассказывают и показывают на деле!
    Прекрасно документированный API. Быстрый эмулятор, который позволяет видеть результат сразу же! Код можно редактировать в Microsoft Word, Notepad++, Eclipse for Lua, да хоть стандартный текстовый редактор!
    Дерзайте!
     
    Последнее редактирование: 29 июл 2014

Поделиться этой страницей