Lolcode - Chức năng
Các hàm rất hữu ích trong lập trình vì chúng giảm bớt thời gian và công sức cho việc viết lại mã. Một mã chức năng được viết tốt mang lại khả năng tái sử dụng cao. Chương này giải thích cho bạn cách viết và làm việc với các hàm trong LOLCODE.
Định nghĩa của một hàm
Hàm là một tập hợp các câu lệnh được thực hiện cùng một lúc bằng cách gọi hàm đó. Trong LOLCODE, định nghĩa của một hàm bắt đầu bằng từ khóa “HOW IZ I” và từ khóa đóng là “IF U SAY SO”.
Cú pháp để viết một hàm trong LOLCODE là−
HOW IZ I <function name> [YR <parameter/argument> [AN YR <other _arguments..> …]]
<code block to execute / Set of statements to execute>
IF U SAY SO
Điểm quan trọng
Hãy xem xét các điểm quan trọng sau đây khi bạn định nghĩa một hàm LOLCODE:
Trong LOLCODE, hàm chỉ có thể chấp nhận một số đối số cố định nhất định làm đầu vào.
Các đối số hoặc tham số, là các định danh trở thành một biến cho hàm.
Các hàm trong LOLCODE không thể truy cập bất kỳ giá trị nào khác ngoài các giá trị được chuyển cho chúng dưới dạng đối số.
Trả về giá trị từ một hàm
Trả lại trong mã hóa có nghĩa là một cái gì đó được trả lại. Trong lập trình, một hàm có thể trả về một số giá trị cho chương trình khi quá trình thực thi của nó hoàn tất. Trong LOLCODE, các hàm trả về các giá trị khác nhau như được giải thích bên dưới:
FOUND YR <any_expression> trả về giá trị của biểu thức khi khối chức năng được thực thi hoàn toàn.
GTFO không trả về giá trị (NOOB), tương tự như return 0 bằng các ngôn ngữ lập trình khác như C và Java.
Nếu không tìm thấy câu lệnh trả lại nào khác, thì IF U SAY SO được thực thi và giá trị trong biến IT được trả về.
Chức năng gọi điện
Một hàm được định nghĩa trong phần thân của chương trình và sau đó được gọi để thực thi. Một hàm chấp nhận một số đối số nhất định được gọi như hình dưới đây:
I IZ <function_name> [YR <expression_One> [AN YR <expression_Two>
[AN YR <expression_Three> ...]]] MKAY
Trong khi gọi một hàm, biểu thức được hình thành bởi tên hàm, theo sau là số lượng đối số mà hàm sẽ chấp nhận. Các đối số này có thể là các biến đơn giản hoặc bất kỳ biểu thức nào. Nếu một hàm chấp nhận bất kỳ biểu thức nào thay vì một giá trị đơn giản, thì giá trị của biểu thức sẽ được tính trước khi hàm được gọi.
Hãy nhớ rằng số lượng đối số mà một hàm sẽ chấp nhận, phải được xác định trong định nghĩa của hàm.
Thí dụ
HAI
HOW DUZ I MAINUMBA
I HAS A NUMBA
GIMMEH NUMBA
FOUND YR NUMBA
IF U SAY SO
VISIBLE MAINUMBA
KTHXBYE
Khi bạn chạy đoạn mã trên, nó sẽ yêu cầu một đầu vào và sau đó khi bạn gửi đầu vào, bạn sẽ thấy kết quả giống như vậy. Ví dụ, nếu chúng ta nhập 55, nó sẽ in ra 55.
Thí dụ
HAI 1.2
HOW IZ I MULTIPLY YR FIRSTOPERANT AN YR SECONDOPERANT
FOUND YR PRODUKT OF FIRSTOPERANT AN SECONDOPERANT
IF U SAY SO
VISIBLE I IZ MULTIPLY YR 2 AN YR 3
KTHXBYE
Hàm trên thực hiện phép nhân các toán hạng đầu vào sẽ in ra kết quả sau khi bạn chạy nó−
sh-
4.3$ lci main.lo
6
Thí dụ
HAI 1.2
I HAS A STRINGARRAY ITZ A BUKKIT
STRINGARRAY HAS A VAR17 ITZ "OBJECT1"
STRINGARRAY HAS A VAR18 ITZ "OBJECT2"
HOW IZ STRINGARRAY ACCESS YR VARIABLE
FOUND YR STRINGARRAY'Z SRS VARIABLE
IF U SAY SO
I HAS A STRING ITZ "VAR17"
VISIBLE STRINGARRAY IZ ACCESS YR STRING MKAY
KTHXBYE
Đầu ra mà đoạn mã trên sẽ tạo ra là:
sh-
4.3$ lci main.lo
OBJECT1