Ternary Operatörü
Coddy'nin C# Journey'sinin Temeller bölümünün bir parçası — ders 28 / 69.
Ternary operatörü, basit bir tek satırlık if-else ifadesidir. Aşağıdaki sözdizimine sahiptir:
variable = (condition) ? value_if_true : value_if_false;Ternary operatörü koşulu değerlendirir. Eğer true ise, değişkene value_if_true değerini atar; aksi takdirde value_if_false değerini atar.
Örneğin:
int age = 20;
string message = (age >= 18) ? "Adult" : "Minor";Bu örnekte, age 18'e eşit veya 18'den büyük olduğu için, message değişkenine "Adult" değeri atanacaktır. Eğer age 18'den küçük olsaydı, message değişkenine "Minor" atanacaktı.
Birden fazla koşulu işlemek için ternary operatörlerini iç içe yerleştirebilirsiniz:
int score = 75;
String grade = (score >= 90) ? "A" : (score >= 80) ? "B" : (score >= 70) ? "C" : "F";Bu, birden fazla koşulu sırayla kontrol eder. Eğer score >= 90 ise grade "A"; değilse score >= 80 ise grade "B"; değilse score >= 70 ise grade "C"; aksi takdirde "F" olur.
Not: İç içe geçmiş ternary operatörlerini okumak zor olabilir. Karmaşık koşullar için bunun yerine if-else ifadelerini kullanın.
Görev
BaşlangıçÜçlü operatörü (ternary operator) kullanarak bir sayının pozitif, negatif veya sıfır olup olmadığını kontrol eden bir program oluşturun. Program şunları yapmalıdır:
- Kullanıcıdan bir tam sayı girişi almalıdır.
- Sayının pozitif, negatif veya sıfır olduğunu belirlemek için üçlü operatörü kullanmalıdır.
positive,negativeveyazerodizesiniresultdeğişkenine kaydetmelidir. - Sonucu şu formatta yazdırmalıdır:
"The number is [positive/negative/zero]".
Bu problemi çözmek için iç içe geçmiş (nested) bir üçlü operatör kullanabilirsiniz.
Kopya kağıdı
Ternary operatörü, şu sözdizimine sahip tek satırlık bir if-else ifadesidir:
variable = (condition) ? value_if_true : value_if_false;Koşulu değerlendirir ve koşul true ise value_if_true değerini, aksi takdirde value_if_false değerini atar.
Örnek:
int age = 20;
string message = (age >= 18) ? "Adult" : "Minor";Birden fazla koşulu işlemek için iç içe geçmiş ternary operatörleri:
int score = 75;
String grade = (score >= 90) ? "A" : (score >= 80) ? "B" : (score >= 70) ? "C" : "F";Bu, birden fazla koşulu sırayla kontrol eder. Eğer score >= 90 ise grade "A" olur; else if score >= 80 ise grade "B" olur; else if score >= 70 ise grade "C" olur; aksi takdirde "F" olur.
Not: İç içe geçmiş ternary operatörlerini okumak zor olabilir. Karmaşık koşullar için bunun yerine if-else ifadelerini kullanın.
Kendin dene
using System;
public class Program {
public static void Main(string[] args) {
int number = int.Parse(Console.ReadLine());
string result = "";
// Kodunuzu aşağıya yazın
Console.WriteLine("The number is " + 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
4Operatörler Bölüm 1
Aritmetik OperatörlerMod Alma OperatörüArtırma/AzaltmaSonradan Artırma/AzaltmaAritmetik Kısayollar7Temel Girdi/Çıktı
Temel ÇıktıString InterpolationGirdi OkumaParseÖzet - 120'ye KadarÖzet - True veya False5Operatörler Bölüm 2
Karşılaştırma OperatörleriMantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 3