2015-08-25 5 views
1

Я пытаюсь закодировать функцию, которая печатает что-то другое каждую секунду.Показать последние цифры только в os.time()

Самый простой способ сделать это (я думаю), проверив, является ли целое четным или нечетным.

  • На четных номерах он должен печатать 'x'.
  • На нечетных числах он должен печатать 'y'.

Моя проблема заключается в том, что я не могу понять, как изменить целое значение os.time только покажите мне самую последнюю цифру (показывать только 0 до 9), так что я могу легко осуществить это в моем коде.

Это то, что я до сих пор:

local seconds = os.time() --but only show last digit, e.g. 0 to 9 

function changeStr() 
    if (seconds % 2 == 0) then 
     print("x") 
    else 
     print("y") 
    end 
end 
+1

Прочитайте название, а затем прочитать тело вопроса. Согласитесь (или, вернее, что в мире делает «четное/нечетное» отношение к «последним цифрам»?) – user2864740

ответ

2

как изменить целое значение os.time только показать мне самую последнюю цифру (показывать только 0 до 9)

Разделите на 10 и возьмите остаток. Это даст вам только 10-е место.

seconds % 10 
0

Если вы хотите строку, содержащую последнюю цифру времени, попробуйте

string.sub(os.time(),-1)