Nilai Kembalian
Termasuk bagian Dasar-Dasar dalam perjalanan Ruby di Coddy. Pelajaran 50 dari 88.
Sejauh ini, method kita melakukan tindakan seperti mencetak output. Namun, method menjadi sangat berguna saat dapat mengirimkan data kembali ke kode yang memanggilnya. Inilah fungsi nilai balik.
Di Ruby, sebuah method secara otomatis mengembalikan nilai dari ekspresi terakhirnya:
def add(a, b)
a + b
end
result = add(5, 3)
puts result # Output: 8Perhatikan bahwa tidak ada puts di dalam method. Sebaliknya, method menghitung a + b dan mengembalikan nilai tersebut. Kamu kemudian bisa menyimpannya dalam variabel atau menggunakannya secara langsung.
Kamu juga bisa menggunakan kata kunci return secara eksplisit:
def multiply(a, b)
return a * b
end
puts multiply(4, 5) # Output: 20Kata kunci return langsung mengakhiri method dan mengembalikan nilai yang ditentukan. Ini berguna saat kamu ingin keluar lebih awal berdasarkan suatu kondisi. Kedua pendekatan ini berfungsi, tetapi programmer Ruby sering mengandalkan pengembalian nilai implisit agar kode lebih ringkas.
Nilai yang dikembalikan memungkinkan kamu merangkai operasi dan membangun logika kompleks dari method sederhana:
def double(n)
n * 2
end
puts double(double(3)) # Output: 12Tantangan
MudahDefinisikan method bernama square yang menerima satu parameter n dan mengembalikan kuadrat dari angka tersebut (angka dikalikan dengan dirinya sendiri).
Baca dua bilangan bulat dari input. Gunakan method square untuk menghitung kuadrat setiap bilangan, lalu cetak jumlah kedua kuadrat tersebut.
Contohnya, jika inputnya adalah 3 dan 4:
- Kuadrat dari 3 adalah 9
- Kuadrat dari 4 adalah 16
- Jumlahnya adalah 25
Outputnya harus berupa:
25Jika inputnya adalah 5 dan 2, outputnya harus berupa:
29Coba sendiri
# Baca dua bilangan bulat dari input
num1 = gets.chomp.to_i
num2 = gets.chomp.to_i
# TODO: Definisikan method square di bawah ini
# TODO: Hitung jumlah kuadrat menggunakan method square, lalu cetak hasilnyaPelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Ringkasan: Logika SederhanaOperator Logika Bagian 3Operator Logika Bagian 47Kalkulator Pembagian Tagihan
Pesan Selamat DatangMengambil input dari Pengguna10FizzBuzz dengan Variasi
Gambaran Umum PermainanMetode FizzBuzz2Variabel dan Tipe Data
Angka dan VariabelTipe Data stringTipe Data booleanTipe Data SymbolMemeriksa Tipe DataKonvensi PenamaanRangkuman: Membuat Variabel5Pengambilan Keputusan
Pernyataan IfIf - ElseRekap: Kalkulator SederhanaIf - Else BersarangPernyataan Unless8Perulangan
For Loop dengan RentangWhile LoopBreakNextRangkuman: FaktorialTimes LoopUntil LoopPerulangan BersarangRangkuman: Input Dinamis3Operator Bagian 1
Operator AritmetikaOperator ModuloPintasan AritmetikaRingkasan: Matematika SederhanaOperator Perbandingan6Dasar Input dan Output
Output dengan putsOutput dengan print dan pOutput dengan VariabelInput dengan getsMethod chompKonversi TipeRangkuman: Kalkulator UsiaRangkuman: Benar atau Salah9method
Mendefinisikan methodParameter methodNilai KembalianRangkuman: Sigma methodRangkuman: Validation methodNilai Default Parameter12Melakukan Perulangan pada Koleksi
Iterator EachEach dengan IndeksMelakukan Perulangan pada StringMap dan CollectLatihan sendiri: Compiler Ruby online