# Cara membuat multi return Function di Golang

Di Go, Anda bisa membuat fungsi dengan beberapa nilai pengembalian. Ini memungkinkan Anda mengembalikan lebih dari satu nilai dari sebuah fungsi. Berikut adalah contoh cara membuat dan menggunakan fungsi dengan multiple return values:

```go
package main

import "fmt"

func bagi(dibagi, pembagi int) (int, int) {
    hasilBagi := dibagi / pembagi
    sisa := dibagi % pembagi
    return hasilBagi, sisa
}

func main() {
    hasilBagi, sisa := bagi(10, 3)
    fmt.Println("Hasil Bagi:", hasilBagi) // Output: Hasil Bagi: 3
    fmt.Println("Sisa:", sisa) // Output: Sisa: 1
}
```

Pada contoh di atas, fungsi `bagi` menerima dua parameter bertipe integer, yaitu `dibagi` dan `pembagi`. Fungsi ini menghitung hasil pembagian dan sisa dari pembagian `dibagi` dengan `pembagi` menggunakan operator pembagian (`/`) dan modulo (`%`), dan kemudian mengembalikan kedua nilai tersebut sebagai multiple return values.

Dalam deklarasi fungsi, `(int, int)` menunjukkan bahwa fungsi ini mengembalikan dua nilai bertipe integer. Dalam fungsi `main`, ketika Anda memanggil fungsi `bagi(10, 3)`, Anda menyimpan hasil pembagian dan sisa dalam variabel `hasilBagi` dan `sisa`. Anda dapat menggunakan nilai-nilai ini sesuai kebutuhan Anda.

Fungsi dengan multiple return values sangat berguna ketika Anda ingin mengembalikan lebih dari satu nilai hasil dari suatu operasi atau perhitungan, tanpa harus membungkus nilai-nilai tersebut dalam struktur data khusus. Penyederhanaan ini membuat kode lebih bersih dan mudah dimengerti.

Di bab berikutnya akan dibahas tentang bagaimana membuat Defer dan Scope di Golang
