Ngôn ngữ lập trình Lua và Lập trình game di động với Corona (Phần 2)
07/10/2014
FacebookTwitterDeliciousStumbleuponDiggMyspaceLinkedInZingmegovnlinkhay


Trong Phần 2, Mobipro sẽ tiếp tục giới thiệu những kiến thức về ngôn ngữ lập trình Lua với các câu lệnh rẽ nhánh (if...else) và câu lệnh lặp. ngon-ngu-lap-trinh-lua-lap-trinh-game-voi-corona-bai-2-phan-1-LUAI. Các câu lệnh rẽ nhánh (if...else ) Lua cung cấp cấu trúc các câu lệnh điều kiện (rẽ nhánh) if...else với mục đích cho phép người lập trình có thể thực hiện các hành động khác nhau với những điều kiện khách nhau. decision_making Cũng như những ngôn ngữ lập trình khác, Lua xác định thực hiện hành động tùy theo giá trị của điều kiện. Nếu điều kiện thỏa mãn hay kết quả của biểu thức điều kiện chứa giá trị là true (đúng) thì hành động đằng sau câu lệnh if sẽ được thực hiện. Lua hỗ trợ những loại câu lệnh điều kiện sau: 1. Câu lệnh if Cú pháp: if Ví dụ: local a = 10; if( a < 20 ) then        print("a nhỏ hơn 20" ); end print("Giá trị của a là :", a); 2. Câu lệnh if...else if_else_statement Cú pháp 1: if_else Nếu điều kiện đúng (biểu thức điều kiện trả về giá trị true) thì thực hiện các câu lệnh sau then. Trường hợp ngược lại thì thực hiện câu lệnh sau else. Ví dụ: local a =100; if( a <20) then    print("a nhỏ hơn 20") else    print("a không nhỏ hơn 20") end Cú pháp 2: if_else_if Trong đó: + Nếu điều kiện biểu thức 1 là đúng thì thực hiện câu lệnh sau then. + Nếu biểu thức 1 trả về sai (false) và biểu thức 2 trả về là đúng (true) thì thực hiện câu lệnh sau biểu thức 2. + Nếu biểu thức 1 trả về false, biểu thức 2 trả về false và biểu thức 3 trả về là true thì thực hiện câu lệnh sau biểu thức 3. + Trường hợp còn lại (biểu thức 1 trả về false, biểu thức 2 trả về false và biểu thức 3 trả về false) thì thực hiện câu lệnh sau lệnh else. Ví dụ: local a =100 if( a ==10) then          print("a có giá trị bằng 10") elseif( a ==20)   then          print("a có giá trị bằng 20") elseif( a ==30)  then          print("a có giá trị bằng 30") else          print("Không có giá trị nào bằng a") end print("Giá trị thực của a là: ", a ) 3. Câu lệnh if lồng nhau Lua cho phép các câu lệnh if lồng nhau. Cú pháp: nested_if Ví dụ: a =100; b =200; if( a ==100)  then        if( b ==200)   then                   print("Giá trị của a là 100 và b là 200");        end end II. Các câu lệnh lặp Trong khi xây dựng chương trình, đôi khi một đoạn code cần được thực hiện nhiều lần, lặp đi lặp lại. Lua cung cấp các câu lệnh lặp để hỗ trợ cho những nhu cầu như vậy. loop Dưới đây là các loại vòng lặp được hỗ trợ trong Lua: 1. Vòng lặp while Vòng lặp này sẽ kiểm tra điều kiện lặp ngay khi bắt đầu, nó sẽ lặp đi lặp lại cho đến khi điều kiện không còn đúng (điều kiện trả về kết quả false) nữa mới kết thúc quá trình lặp. Nếu ngay từ đầu điều kiện trả về kết quả là false thì vòng lặp sẽ không được thực hiện. Cú pháp: while Ví dụ: a=10 while( a <20) do       print("Giá trị của :", a)       a = a+1 end 2. repeat...util Vòng lặp này sẽ thực hiện cho đến khi điều kiện trong while trả về kết quả true thì dừng lại. Cú pháp: repeat Ví dụ: a =10 repeat       print("Giá trị của a là:", a)     a = a +1 until( a >15) Ví dụ trên sẽ in ra các giá trị của a từ 10 đến 15. Sau khi đạt được giá trị a >15 thì chương trình dừng lại. 3. Vòng lặp for Không như while repeat...until, vòng lặp for cho phép bạn xác định chính xác số lần lặp và các điều kiện lặp. Cú pháp: for Trong đó: + init là giá trị khởi tạo cho biến điều kiện. + max, min là một trong hai giá trị biến điều kiện được phép đạt đến. + increment: giá trị tăng (giảm) cho biến điều kiện qua mỗi lần lặp. Ví dụ: for i=10,1,-1 do    print(i) end Vòng lặp trên sẽ in ra các giá trị giảm dần từ 10 cho đến 1. Chúc các bạn tìm được những thông tin bổ ích từ bài viết của Mobipro và hẹn gặp lại trong phần sau với đầy đủ các kiến thức về ngôn ngữ Lua hơn nữa !

Dương Linh