Mengembalikan Beberapa Nilai
Termasuk bagian Dasar-Dasar dalam perjalanan GO di Coddy. Pelajaran 56 dari 109.
Fungsi Go dapat mengembalikan beberapa nilai sekaligus, yang sangat berguna untuk mengembalikan hasil dan informasi error.
Buat fungsi yang mengembalikan hasil bagi dan sisa:
func divide(a, b int) (int, int) {
quotient := a / b
remainder := a % b
return quotient, remainder
}
func main() {
q, r := divide(7, 3)
fmt.Println("7 ÷ 3 =", q, "with remainder", r)
}Saat kamu menjalankan program ini, hasilnya:
7 ÷ 3 = 2 with remainder 1Fungsi mengembalikan dua nilai yang dipisahkan dengan koma, dan kita menangkap kedua nilai tersebut menggunakan beberapa variabel dalam penugasan.
Jika kamu hanya membutuhkan beberapa nilai yang dikembalikan, kamu dapat menggunakan identifier kosong _ untuk mengabaikan nilai yang tidak kamu butuhkan:
q, _ := divide(7, 3) // abaikan sisanya
fmt.Println("Quotient:", q)Menggunakan _ memberi tahu Go untuk mengabaikan nilai yang dikembalikan tersebut. Ini wajib dilakukan saat kamu tidak menggunakan suatu nilai, karena Go tidak mengizinkan variabel yang tidak digunakan.
Tantangan
PemulaDalam tantangan ini, kamu akan berlatih mengembalikan beberapa nilai dari fungsi di Go.
Kita memiliki fungsi bernama getPersonInfo yang harus mengembalikan nama seseorang, usia, dan apakah orang tersebut seorang pelajar. Tugasmu adalah melengkapi fungsi tersebut dengan menambahkan pernyataan return yang sesuai.
Coba sendiri
package main
import "fmt"
// Fungsi ini harus mengembalikan tiga nilai: name, age, dan isStudent
func getPersonInfo() (string, int, bool) {
// Variabelnya sudah didefinisikan untukmu
name := "Alex"
age := 25
isStudent := true
// TODO: Kembalikan ketiga nilai (name, age, isStudent)
}
func main() {
// Panggil fungsi dan simpan nilai yang dikembalikan
name, age, isStudent := getPersonInfo()
// Cetak nilai-nilainya
fmt.Printf("Name: %s\n", name)
fmt.Printf("Age: %d\n", age)
fmt.Printf("Is Student: %t\n", isStudent)
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Perbandingan dan Logika
Operator Perbandingan, Bagian 1Operator Perbandingan, Bagian 2Operator AND LogikaOperator OR LogikaOperator NOT LogikaDasar Prioritas OperatorRingkasan, Membuat Perbandingan7Alur Kontrol: Perulangan
Penjelasan tentang `for` loop`for` loop Dasar`for` loop dengan Kondisi SajaKata Kunci `break`Kata Kunci `continue`Perulangan BersarangRangkuman: Mengulang Tindakan2Variabel dan Tipe Data Dasar
Apa itu variabelInferensi Tipe dengan `:=`Bilangan Bulat (int)Bilangan Floating-PointBooleanstringNilai NolKonstantaKonvensi PenamaanRangkuman: Variabel dan Tipe5Input/Output Dasar
Output TerformatKata Kerja FormatMencetak Tipe DataMendapatkan Input Dasar dari PenggunaRangkuman: Input dan Output8Fungsi
Memahami FungsiMendeklarasikan FungsiMemanggil FungsiParameter FungsiMengembalikan Satu NilaiMengembalikan Beberapa NilaiNilai Kembalian BernamaDasar Cakupan FungsiRangkuman: Membuat Kodemu Dapat Digunakan Kembali3Operator Dasar
Operator AritmetikaOperator PembagianOperator ModuloOperator PenugasanOperator Penugasan GabunganInkrementasi dan DekrementasiRangkuman: Perhitungan6Alur Kontrol: Percabangan
Pernyataan `if`Kata Kunci `else`Kata Kunci `else if`Shadowing Variabel dalam `if`Menginisialisasi VariabelPernyataan `switch``switch` dengan Ekspresi`switch` tanpa EkspresiKata Kunci `fallthrough`Ringkasan: Membuat KeputusanLatihan sendiri: Compiler Go online