Rangkuman: Pembagian aman
Termasuk bagian Logika dan Alur dalam perjalanan Lua di Coddy. Pelajaran 34 dari 54.
Tantangan
MudahTulis fungsi safeDivide yang menerima a dan b, lalu mengembalikan hasil pembagian a dengan b, atau pesan error jika pembagian gagal.
Fungsi ini harus menggunakan pcall() untuk melakukan operasi pembagian dengan aman. Buat fungsi bagian dalam yang melakukan pembagian dan menimbulkan error jika b adalah nol, lalu bungkus fungsi tersebut dengan pcall() untuk menangkap error apa pun.
Logika:
- Buat fungsi bagian dalam yang memeriksa apakah
bbernilai 0 - Jika
bbernilai 0, panggilerror("Cannot divide by zero", 0)(angka0menghilangkan nama file dan nomor baris dari pesan) - Jika tidak, kembalikan
a / b - Gunakan
pcall()untuk menjalankan fungsi bagian dalam - Jika berhasil, kembalikan
"Result: "diikuti hasil pembagian - Jika terjadi error, kembalikan
"Error: "diikuti pesan error
Parameter:
a(angka): Bilangan yang dibagib(angka): Pembagi
Nilai yang dikembalikan: Sebuah string yang berisi "Result: " diikuti hasil pembagian, atau "Error: " diikuti pesan error (string)
Coba sendiri
function safeDivide(a, b)
-- Tulis kodemu di sini
end
Semua pelajaran di Logika dan Alur
1Iterasi Tabel Tingkat Lanjut
Iterasi dengan pairs()Iterasi dengan ipairs()pairs() vs. ipairs()Rangkuman: Lembar Karakter2Fungsi library tabel Lainnya
table.concat()Pembuatan tabel & unpack()table.sort()Pengurutan Kustom dengan FungsiRangkuman, Papan Skor TertinggiLatihan sendiri: Compiler Lua online