DEV Community

Aydın Yakar
Aydın Yakar

Posted on • Edited on

3 2

Golang 101: Koşul (If/Else)

Koşul operatörleri olan If ve Else detaylarına bakalım.

package main

import "fmt"

func main() {

    i := 10

    // Basit if kullanımı
    if i%5 == 0 {
        fmt.Printf("%d rakamı 5'e kalansız bölünebilir.\n", i)
    }


    // If/Else kullanımı
    if i < 5 {
        fmt.Printf("%d küçüktür 5'ten\n", i)
    } else {
        fmt.Printf("%d büyüktür 5'ten\n", i)
    }

    // Değişkenin tanımıyla If kullanımı
    if sayi := 7; sayi < 0 {
        fmt.Printf("%d rakamı 0'dan küçüktür!\n", i)
    } else if sayi < 10 {
        fmt.Printf("%d rakamı 10'dan küçüktür!\n", sayi)
    } else {
        fmt.Printf("%d iki koşulu da sağlamıyor!\n", sayi)
    }
}
Enter fullscreen mode Exit fullscreen mode
10 rakamı 0'a bölünebilir.
10 büyüktür 5'ten
7 rakamı 10'dan küçüktür!
Enter fullscreen mode Exit fullscreen mode

Çalıştır!

Basit If Kullanımı

    if i%5 == 0 {
        fmt.Printf("%d rakamı 5'e kalansız bölünebilir.\n", i)
    }
Enter fullscreen mode Exit fullscreen mode

Basit if koşulunda i değişkeninin mod(5)'i alınarak 0'a eşit olup olmadığı kontrol ediliyor.

If/Else Birlikte Kullanımı

    if i < 5 {
        fmt.Printf("%d küçüktür 5'ten\n", i)
    } else {
        fmt.Printf("%d büyüktür 5'ten\n", i)
    }
Enter fullscreen mode Exit fullscreen mode

If koşul bloğu koşulu sağlamaz ise else bloğu çalışmaktadır.

Değişken Tanımlama; If / Else If / Else Kullanımı

    if sayi := 7; sayi < 0 {
        fmt.Printf("%d rakamı 0'dan küçüktür!\n", i)
    } else if sayi < 10 {
        fmt.Printf("%d rakamı 10'dan küçüktür!\n", sayi)
    } else {
        fmt.Printf("%d iki koşulu da sağlamıyor!\n", sayi)
    }
Enter fullscreen mode Exit fullscreen mode

Standart if kullanımlarından farklı olarak önce sayi değişkeni tanımlanıp ardından koşul belirtilmiştir. Unutulmaması gereken ise sayi değişkeninin koşul blokları tamamen bittikten ölmesidir.

Printf

Örnekler de fmt.Printf fonksiyonunu kullandık. Çıktı formatını düzenlemekte kullanılmaktadır. Aynı zamanda \n ile de new line yani çıktı sonrası yeni satır oluşturulması sağlanmıştır.

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (0)

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more