Operatör Önceliği Temelleri
Coddy'nin GO Journey'sinin Temeller bölümünün bir parçası — ders 27 / 109.
Operatör önceliği, bir ifadedeki işlemlerin gerçekleştirilme sırasını belirler. Daha yüksek önceliğe sahip işlemler, daha düşük önceliğe sahip olanlardan önce gerçekleştirilir.
Operatör önceliğini gösteren bir program oluşturun:
result1 := 5 + 3 * 2
result2 := (5 + 3) * 2
fmt.Println("5 + 3 * 2 =", result1)
fmt.Println("(5 + 3) * 2 =", result2)Şu çıktıyı verir:
5 + 3 * 2 = 11
(5 + 3) * 2 = 16İlk ifadede, çarpma (*) toplama (+) işleminden daha yüksek önceliğe sahiptir, bu nedenle önce 3 * 2 hesaplanır. İkinci ifadede, parantezler varsayılan önceliği geçersiz kılarak 5 + 3 işleminin önce hesaplanmasını sağlar.
Görev
BaşlangıçBu meydan okumada, Go'da operatör önceliğini anlamaya yönelik pratik yapacaksınız. Farklı değerlere sahip birkaç değişkeniniz var ve beklenen çıktıyı elde etmek için result değişkenindeki ifadeyi düzeltmeniz gerekiyor.
İfade şu anda yanlış parantez yerleşimine sahip. Göreviniz, ifadenin true olarak değerlendirilmesini sağlamak için doğru yerlere parantez eklemektir.
Kopya kağıdı
Operatör önceliği, bir ifade içindeki işlemlerin hangi sırayla gerçekleştirileceğini belirler. Daha yüksek önceliğe sahip işlemler, daha düşük önceliğe sahip olanlardan önce gerçekleştirilir.
Çarpma (*), toplama (+) işleminden daha yüksek önceliğe sahiptir:
result1 := 5 + 3 * 2 // 11'e eşittir (önce 3 * 2, sonra + 5)
result2 := (5 + 3) * 2 // 16'ya eşittir (önce 5 + 3, sonra * 2)Varsayılan önceliği geçersiz kılmak ve işlemlerin sırasını kontrol etmek için parantez kullanın.
Kendin dene
package main
import "fmt"
func main() {
// Bu değişkenler sizin için zaten ayarlandı
a := true
b := false
c := true
// TODO: Aşağıdaki ifadenin sonucunun true olması için parantez ekleyin
// HINT: İfadenin true olarak değerlendirilmesi gerekiyor
result := a && b || c
// Aşağıdaki satırı değiştirmeyin
fmt.Println(result)
}
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
4Karşılaştırma ve Mantıksal Operatörler
Karşılaştırma Operatörleri - Bölüm 1Karşılaştırma Operatörleri - Bölüm 2Mantıksal VE OperatörüMantıksal VEYA OperatörüMantıksal DEĞİL OperatörüOperatör Önceliği TemelleriÖzet - Karşılaştırma Yapma7Kontrol Akışı: Döngüler
`for` Döngüsü Nedir?`for` Döngüsü - Temel`for` Döngüsü - Sadece Koşul`break` Anahtar Kelimesi`continue` Anahtar Kelimesiİç İçe DöngülerÖzet - İşlemleri Tekrarlama2Değişkenler ve Temel Veri Tipleri
Değişken nedir?`:=` ile Tür ÇıkarımıTam Sayılar (int)Ondalıklı SayılarBooleanlarStringlerSıfır DeğerlerSabitlerİsimlendirme KurallarıÖzet - Değişkenler ve Türler5Temel Giriş/Çıkış
Biçimlendirilmiş ÇıktıBiçim BelirteçleriVeri Tiplerini YazdırmaTemel Kullanıcı Girdisi AlmaÖzet - Giriş ve Çıkış8Fonksiyonlar
Fonksiyonları AnlamakFonksiyon TanımlamaFonksiyonları ÇağırmaFonksiyon ParametreleriTek Bir Değer DöndürmeBirden Fazla Değer Döndürmeİsimlendirilmiş Dönüş DeğerleriFonksiyon Kapsamı TemelleriÖzet - Yeniden Kullanılabilir Kod Oluşturma3Temel Operatörler
Aritmetik OperatörlerBölme OperatörüModulo OperatörüAtama OperatörüBileşik Atama OperatörleriArtırma ve AzaltmaÖzet - Hesaplamalar6Kontrol Akışı: Koşullu İfadeler
`if` İfadesi`else` Anahtar Kelimesi`else if` Anahtar Kelimesi`if` İçinde Değişken GölgelemeDeğişkenleri Başlatma`switch` İfadesiİfadeli `switch`İfadesiz `switch``fallthrough` Anahtar KelimesiÖzet - Karar Verme