Tutorial Lua/Ungkapan

Daripada Wikibooks
Pergi ke pandu arah Pergi ke carian

Modul-modul Lua yang berlandaskan penyambung Scribunto/Lua distor dalam laman-laman sumber yang menggunakan ruang nama Modul:. Setiap modul menggunakan jadual untuk memegang fungsi dan pemboleh ubah, dan jadual itu dipulangkan pada penghujung kod modul.[1]

Ungkapan terdiri daripada nilai literal, pemboleh ubah, dan operator-operator aritmetik, hubungan serta logik. Bab ini akan menunjukkan cara untuk mengguna ungkapan dalam skrip anda.

Prasyarat[sunting]

Bab ini menganggap yang anda sudah selesai dengan bab Pemboleh ubah.

Buat skrip Lua dengan Ungkapan[sunting]

Untuk membuat skrip Lua dengan pemboleh ubah: 1. Pergi ke Modul:Kotak pasir. 2. Buang semua kod yang terdapat dalam kotak pasir.

Ia sebuah kotak pasir. Semua orang boleh bermain di kotak pasir. Tetapi, jika anda mendapati ada seorang pennguna lain yang sedang menyunting kotak pasir, anda juga boleh menggunakan 'Modul:Kotak pasir/Nama pengguna', dengan 'Nama pengguna' diganti oleh nama pengguna anda.

3. Tambah kod berikut dan simpan laman:

local p = {}

function p.aritmetik()
    local a = 3
    local b = 2
    local hasil -- P: 'hasil' bermaksud 'hasil'

    hasil = ';Aritmetik\n' -- '\n' P: bermaksud 'newline', 'baris baru'
    hasil = hasil .. ':a adalah ' .. a .. '\n'
    hasil = hasil .. ':b adalah ' .. b .. '\n'
     -- [[P: operator-operator aritmetik,
             dan ' .. ' digunakan untuk jeraitan ]]
    hasil = hasil .. ':a + b adalah ' .. a + b .. '\n'
    hasil = hasil .. ':a - b adalah ' .. a - b .. '\n'
    hasil = hasil .. ':a * b adalah ' .. a * b .. '\n'
    hasil = hasil .. ':a / b adalah ' .. a / b .. '\n'
    hasil = hasil .. ':a % b adalah ' .. a % b .. '\n'
    hasil = hasil .. ':a ^ b adalah ' .. a ^ b .. '\n'
    hasil = hasil .. ':-a adalah ' .. -a .. '\n'

    return hasil
end

function p.hubungan()
    local a = 3
    local b = 2
    local hasil

    hasil = ';Hubungan\n'
    hasil = hasil .. ':a adalah ' .. a .. '\n'
    hasil = hasil .. ':b adalah ' .. b .. '\n'
    hasil = hasil .. ':a == b adalah ' .. tostring(a == b) .. '\n'
    hasil = hasil .. ':a ~= b adalah ' .. tostring(a ~= b) .. '\n'
    hasil = hasil .. ':a < b adalah ' .. tostring(a < b) .. '\n'
    hasil = hasil .. ':a > b adalah ' .. tostring(a > b) .. '\n'
    hasil = hasil .. ':a <= b adalah ' .. tostring(a <= b) .. '\n'
    hasil = hasil .. ':a >= b adalah ' .. tostring(a >= b) .. '\n'

    return hasil
end

function p.logik()
    local a = 3
    local b = 2
    local hasil

    hasil = ';Logik\n'
    hasil = hasil .. ':a adalah ' .. a .. '\n'
    hasil = hasil .. ':b adalah ' .. b .. '\n'
    hasil = hasil .. ':a < b and b < a adalah ' .. tostring(a < b and b < a) .. '\n' -- P: 'tostring mengubah hasil menjadi rentetan
    hasil = hasil .. ':a < b or b < a adalah ' .. tostring(a < b or b < a) .. '\n'
    hasil = hasil .. ':a < b adalah ' .. tostring(a < b) .. '\n'
    hasil = hasil .. ':not (a < b) adalah ' .. tostring(not (a < b)) .. '\n'

    return hasil
end

function p.panjang()
    local string = 'Ini rentetan'
    local hasil

    hasil = ';Panjang\n'
    hasil = hasil .. ':Panjang "' .. string .. '" adalah ' .. #string

    return hasil
end

return p

Uji skrip Lua anda[sunting]

Untuk menguji skrip pertama anda:

  1. Pergi ke sama ada ke laman Module talk:Kotak pasir, Wikibuku: Kotak pasir ataupun laman pengguna atau kotak pasir anda.
  2. Tambah kod ini dan simpan laman:
{{#invoke:Kotak pasir|aritmetik}}
{{#invoke:Sandbox|hubungan}}
{{#invoke:Sandbox|logik}}
{{#invoke:Sandbox|panjang}}

Hasilnya:


Aritmetik
a adalah 3
b adalah 2
a + b adalah 5
a - b adalah 1
a * b adalah 6
a / b adalah 1.5
a % b adalah 1
a ^ b adalah 9
-a adalah -3

Hubungan 
a adalah 3
b adalah 2
a == b adalah false
a ~= b adalah true
a < b adalah false
a > b adalah true
a <= b adalah false
a >= b adalah true

Logik
a adalah 3
b adalah 2
a < b and b < a adalah false
a < b or b < a adalah true
a < b adalah false
not (a < b) adalah true

Panjang

Panjang "Ini rentetan" adalah 16

Rujukan[sunting]