Study
Lua

Multiple Return Values

Penjelasan

Salah satu fitur khas Lua: satu fungsi bisa mengembalikan LEBIH DARI SATU nilai sekaligus, cukup dipisah koma setelah `return`. Nilai-nilai itu ditangkap pemanggil lewat multiple assignment (`a, b = fungsi()`). Kalau hanya sebagian nilai yang ditangkap, sisanya otomatis dibuang.

Contoh Konsep

function bagi(a, b)
  local hasil = a // b       -- pembagian bulat
  local sisa = a % b
  return hasil, sisa
end

local hasil, sisa = bagi(17, 5)
print(hasil, sisa)   -- 3  2

-- Kalau cuma butuh satu nilai, sisanya diabaikan
local hasilSaja = bagi(17, 5)
print(hasilSaja)     -- 3 (nilai kedua diabaikan)

Praktikum

Buat fungsi min_max(a, b, c) yang mengembalikan 2 nilai sekaligus: nilai terkecil dan nilai terbesar dari 3 angka.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Multiple return values sering dipakai untuk mengembalikan "hasil DAN status error" sekaligus (mis. `nilai, error = fungsi()`), pola umum di Lua sebagai pengganti exception untuk kasus tertentu.