Lua Number Tutorial – Complete Guide

Welcome to this comprehensive walkthrough on the world of Lua Numbers. In this tutorial, we will dive into the fascinating world of this Lua data type, its uses, and why its knowledge is crucial for both budding and professional programmers.

What is Lua Number?

Lua numbers constitute an integral data type in the Lua programming language. Despite being one of the simplest concepts in programming, their effective application often differentiates an efficient software solution from an inferior one.

What is it for?

Lua numbers are used in a myriad of scenarios in coding, ranging from controlling game elements to running algorithms. Understanding them makes problem-solving and decision-making much easier when developing software solutions or designing exciting games.

Why Should I Learn It?

From manipulating game scores to controlling game characters’ movement, there are a plethora of practical applications where Lua numbers come into play. Learning how to use them levels up both your programming and problem-solving skills. With them, you can create unique algorithms, implement control conditions, and overall improve your coding logic. Learning Lua numbers turns essential tasks into straightforward ones—laying a strong foundation for your coding journey.

CTA Small Image

Working with Lua Numbers: Examples

Understanding how to work with Lua numbers is the stepping stone to tackling many complex scenarios in programming. Let’s dive into some key examples that will help set this foundation.

Creating and Assigning Numbers

In Lua, you can create and assign numbers to variables as shown below:

local a = 10     -- integer
local b = 7.5    -- float

Basic Mathematical Operations with Numbers

Basic mathematical operations like addition, subtraction, multiplication, and division can be easily performed using Lua numbers:

local a = 10
local b = 5

print(a + b)  -- This will output 15
print(a - b)  -- This will output 5
print(a * b)  -- This will output 50
print(a / b)  -- This will output 2

The Modulus Operation

The modulus operation in Lua finds the remainder after the division of one number by another (also called the division residue). It’s denoted by the “%” symbol.

local a = 10
local b = 3

print(a % b)  -- This will output 1

The Power Operation

Lua also allows you to compute the power of a number. It uses the “^” symbol for this operation.

local a = 2
local b = 3

print(a ^ b)  -- This will output 8

Remember, experimenting with code is the key to learning. Try these examples and more to understand the nuances of Lua numbers.

Working with Integer Division

What if you want to divide two numbers but keep the result as an integer? Lua offers the ‘//’ operator:

local a = 10
local b = 3

print(a // b)  -- This will output 3, as the fraction part is discarded

Order of Operations

Just like in common arithmetic, Lua follows a specific order of operations – parentheses, exponentiation, multiplication and division, and finally addition and subtraction. Let’s have an example:

local a = 2
local b = 3
local c = 4

print(a + b * c)  -- This will output 14 and not 20

In the example above, multiplication has a higher precedence, so Lua will first calculate ‘b * c’ before adding ‘a’. We can change this behavior by using parentheses:

print((a + b) * c)  -- This will output 20 and not 14

Negative Numbers

Lua also allows working with negative numbers, which you’ll come across at some point in game development or any other programming task. Here’s a simple way to use negative numbers:

local a = -3
print(-a)  -- This will output 3

Lua Numbers are versatile and work in conjunction with many other elements of the language to create dynamic and functional programs or games.


Mastering Lua numbers is a fundamental step to becoming proficient in Lua programming. Their roles in controlling game elements, running algorithms, quantifying and validating data make them a crucial learning point. At Zenva, we offer comprehensive tutorials that thoroughly nurture your understanding and prowess in these number systems, thereby elevating you to build high-quality games and software solutions.

Start exploring the intricate world of Lua Numbers today. Your coding journey awaits!

Number Comparisons

In Lua, comparing numbers is a fundamental operation used in decision-making structures such as ‘if’ statements and loops.

In the below example, we use comparison operators like greater than (>) and less than (<) to make decisions:

local a = 10
local b = 20

if a > b then
    print("a is greater than b")
elseif a < b then
    print("a is less than b")

This program outputs “a is less than b” because 10 is less than 20.

Equality and Inequality Comparisons

Apart from less than and greater than comparisons, you can also check if a number equals or does not equal another number using the “==” and “~=” operators respectively:

local a = 10
local b = 10

if a == b then
    print("a is equal to b")

if a ~= b then
    print("a is not equal to b")

In this case, the program will print “a is equal to b” as 10 equals 10.

Combining Comparisons

Sometimes, you may need to combine comparisons. For instance, you want to ensure that a number falls within a certain range:

local a = 15

if a > 10 and a < 20 then
    print("a is between 10 and 20")

Here, the “and” keyword combines the comparisons. The statement within the “if” condition will only be true if “a” is greater than 10 and less than 20.

Incrementing and Decrementing Numbers

In programming, it’s common to increase (increment) or decrease (decrement) the value of a number:

local a = 10

a = a + 1  -- incrementing a
print(a)  -- This will output 11

a = a - 1  -- decrementing a
print(a)  -- This will output 10

Remember, practice and more practice makes perfect. Make sure to try out these examples and play around with the numbers, operations, and conditions to reinforce your understanding.

Where to Go Next?

With the foundation set and your understanding of Lua numbers strong, it’s time to explore further. How about delving into the exciting world of game development? Our Roblox Game Development Mini-Degree is a comprehensive collection of courses that covers game creation using Roblox Studio and Lua. It provides an in-depth run-through of scripting, game dynamics, and more. From basic concepts of Roblox to advanced first-person shooter games, this Mini-Degree has it all.

For those with a specific interest in Roblox game development, be sure to explore our wide selection of Roblox Courses. Whether you’re a beginner intrigued by the world of coding or a professional looking for a career change, Zenva has courses specially curated for every level of experience.

Keep exploring, keep learning, and remember, “great coders are great learners!”. Turn your passion for coding and game development into a professional skill with Zenva. Your journey to mastery is just a click away!


Understanding Lua numbers can significantly level up your game development and programming capabilities, empowering you to build intricate control systems, dynamic game logic, and much more. In this ever-dynamic world of technology, having such a strong foundation can be incredibly rewarding.

At Zenva, we’re all about equipping you with the right skills to foster your creativity and propel your tech career forward. Our Roblox Game Development Mini-Degree offers an impactful avenue for mastering Lua scripting in a practical, project-oriented setting. Remember, the journey of a great coder starts with the mastery of the basics. So, take your first step today and let Zenva guide you every step of the way. Happy coding!

Did you come across any errors in this tutorial? Please let us know by completing this form and we’ll look into it!

Python Blog Image

FINAL DAYS: Unlock coding courses in Unity, Godot, Unreal, Python and more.