Functions
Ek Go function directly ek se zyada value return kar sakta hai — unhe pehle kisi tuple ya object mein wrap kiye bina. Isko Go ki standard library mein hamesha use kiya jaata hai, sabse zyada ek result ko ek error ke saath return karne ke liye.
main.go
Khud try karo →package main
import "fmt"
func divide(a, b int) (int, int) {
return a / b, a % b
}
func main() {
quotient, remainder := divide(17, 5)
fmt.Println(quotient, remainder)
}Output
3 2
Practice mein multiple return values
Kyunki multiple return values khud language mein built-in hain, neeche jaisa ek function minMax ek hi call mein ek slice ka sabse chhota aur sabse bada number dono return kar sakta hai, aur caller bas := se dono ko unpack kar leta hai.
main.go
Khud try karo →package main
import "fmt"
func minMax(numbers []int) (int, int) {
min, max := numbers[0], numbers[0]
for _, n := range numbers {
if n < min {
min = n
}
if n > max {
max = n
}
}
return min, max
}
func main() {
low, high := minMax([]int{4, 8, 15, 16, 23, 42})
fmt.Println(low, high)
}Output
4 42
Aage: control flow — if/else, aur Go ka single loop keyword.
Practice exercise
Ek function multiply(a, b int) int likho jo a * b return kare, phir multiply(6, 7) print karo.