Nilai Kembalian
Termasuk bagian Dasar-Dasar dalam perjalanan R di Coddy. Pelajaran 48 dari 78.
Sejauh ini, fungsi kita telah mencetak output secara langsung. Namun, sering kali kamu ingin sebuah fungsi menghitung nilai dan mengirimkannya kembali agar bisa kamu gunakan di bagian lain kodemu. Di sinilah nilai kembalian berperan.
Gunakan fungsi return() untuk mengembalikan nilai dari fungsimu:
add <- function(a, b) {
return(a + b)
}
result <- add(5, 3)
print(result)Output:
[1] 8Alih-alih mencetak di dalam fungsi, kita mengembalikan jumlahnya. Nilai yang dikembalikan kemudian dapat disimpan dalam variabel, digunakan dalam perhitungan, atau diteruskan ke fungsi lain.
Ini membuat fungsi jauh lebih serbaguna:
double <- function(x) {
return(x * 2)
}
print(double(5) + double(3))output:
[1] 16Di R, jika kamu tidak menggunakan return(), fungsi akan otomatis mengembalikan ekspresi terakhir yang dievaluasi. Namun, penggunaan return() secara eksplisit membuat kodemu lebih jelas dan sangat berguna terutama saat kamu ingin keluar dari fungsi lebih awal.
Tantangan
MudahBuat fungsi bernama calculate_power yang menerima dua argumen: base dan exponent. Fungsi tersebut harus return hasil pemangkatan base dengan exponent (menggunakan operator ^).
Baca dua angka dari input, ubah keduanya menjadi nilai numerik, lalu panggil fungsi kamu. Simpan nilai yang dikembalikan dalam variabel bernama result, lalu cetak result.
Sebagai contoh, jika inputnya adalah 2 dan 3, outputnya adalah:
[1] 8Jika inputnya adalah 5 dan 2, outputnya adalah:
[1] 25Coba sendiri
# Baca input
con <- file("stdin", "r")
base <- as.numeric(suppressWarnings(readLines(con, n = 1)))
exponent <- as.numeric(suppressWarnings(readLines(con, n = 1)))
# TODO: Buat fungsi bernama calculate_power yang menerima base dan exponent
# dan mengembalikan base yang dipangkatkan dengan exponent menggunakan operator ^
# TODO: Panggil fungsimu dengan nilai input dan simpan hasilnya dalam 'result'
# Tampilkan hasilnya sebagai output
print(result)Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 2
Operator Logika (AND, OR)Operator Logika Bagian 2 (NOT)Rangkuman: Logika SederhanaLogika Tervektorisasi Bagian 1Logika Tervektorisasi Bagian 27Kalkulator Pembagi Tagihan
Pesan Selamat DatangMenerima Input Pengguna10FizzBuzz dengan Sentuhan Unik
Ikhtisar PermainanFungsi FizzBuzz2Variabel dan Tipe Data
Tipe Data NumerikTipe Data IntegerTipe Data KarakterTipe Data LogikaMemeriksa Tipe DataKonvensi PenamaanNilai yang Hilang: NARingkasan: Membuat Variabel8Perulangan
For LoopWhile LoopBreakBerikutnya (Continue)Ringkasan: FaktorialPembuatan Urutan (seq, :)Loop BersarangRingkasan: Input Dinamis3Operator Bagian 1
Operator AritmetikaPembagian Bilangan Bulat dan ModuloOperator PenugasanRangkuman: Matematika SederhanaOperator Perbandingan6Dasar input/output
Cetak outputcat untuk outputOutput dengan variabelMembaca input dengan readline()Dasar konversi tipe dataRingkasan: Kalkulator usiaRingkasan: Benar atau salah9Fungsi
Mendeklarasikan FungsiArgumen FungsiNilai KembalianUlasan: Fungsi SigmaUlasan: Fungsi ValidasiNilai Parameter Default12Melakukan Iterasi pada Urutan
Mengiterasi Elemen VektorMenggunakan seq_along()Mengiterasi Karakter (strsplitFungsi Manipulasi stringLatihan sendiri: Compiler R online