Menu
CoddyTech

Birden Fazla Değer Döndürme

Coddy'nin GO Journey'sinin Temeller bölümünün bir parçası. Ders 56 / 109.

Go işlevleri aynı anda birden fazla değer döndürebilir; bu, hem sonuçları hem de hata bilgilerini döndürmek için son derece kullanışlıdır.

Hem bölüm hem de kalanı döndüren bir fonksiyon oluştur:

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)
}

Bu programı çalıştırdığında şu çıktıyı verir:

7 ÷ 3 = 2 with remainder 1

Fonksiyon, virgüllerle ayrılmış iki değer döndürür ve atamada birden fazla değişken kullanarak her iki değeri de yakalarız.

Döndürülen değerlerin yalnızca bazılarına ihtiyacın varsa, ihtiyacın olmayanları yok saymak için boş tanımlayıcıyı _ kullanabilirsin:

q, _ := divide(7, 3)  // kalanı yok say
fmt.Println("Quotient:", q)

_ kullanmak, Go'ya bu dönüş değerini yok saymasını söyler. Go kullanılmayan değişkenlere izin vermediğinden, bir değeri kullanmadığında bunu yapman gerekir.

challenge icon

Görev

Başlangıç

Bu meydan okumada, Go'da bir fonksiyondan birden fazla değer döndürme pratiği yapacaksın.

Bir kişinin adını, yaşını ve öğrenci olup olmadığını döndürmesi gereken getPersonInfo adlı bir fonksiyonumuz var. Görevin, uygun return ifadesini ekleyerek fonksiyonu tamamlamak.

Kendin dene

package main

import "fmt"

// Bu fonksiyon üç değer döndürmelidir: name, age ve isStudent
func getPersonInfo() (string, int, bool) {
	// Değişkenler sizin için zaten tanımlanmış
	name := "Alex"
	age := 25
	isStudent := true
	
	// TODO: Üç değerin tamamını döndürün (name, age, isStudent)
	
}

func main() {
	// Fonksiyonu çağırın ve döndürülen değerleri saklayın
	name, age, isStudent := getPersonInfo()
	
	// Değerleri yazdırın
	fmt.Printf("Name: %s\n", name)
	fmt.Printf("Age: %d\n", age)
	fmt.Printf("Is Student: %t\n", isStudent)
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler

Kendi başına pratik yap: Online Go derleyicisi