C# Else if kullandığım halde neden bu oluyor?

gereksiz0

Hectopat
Katılım
28 Mart 2021
Mesajlar
17
Daha fazla  
Cinsiyet
Erkek
C#:
Random random = new Random();
 int kalan = random.Next(12);
 int discountPercentage = 0;

 if(kalan == 0)
 {
 Console.WriteLine("Your subscription has expired.");
 }
 else if(kalan == 1)
 {
 Console.WriteLine("Your subscription expires within a day!");
 discountPercentage = 20;
 }
 else if(kalan <= 5)
 {
 Console.WriteLine($"Your subscription expires in {discountPercentage} days.");
 discountPercentage = 10;
 }
 else if(kalan <= 10)
 {
 Console.WriteLine("Your subscription will expire soon. Renew now!");
 }

 if (discountPercentage > 0)
 {
 Console.WriteLine($"Renew now and save {discountPercentage}");
 }

Neden "else if" kullanmama rağmen, 0 gün kaldığında cevap alırken, neden bir, "Your subscription has expired." çıktısını bir de "Your subscription expires in 0 days.
Renew Now and save 10" çıktısını veriyor, ben zaten "else if" kullandım. tekrar neden 5'ten küçük kısmı için 0 olmadığını belirtmem gerekiyor?
 
Console.WriteLine($"Your subscription expires in {discountPercentage} days.");
Burada {discountPercetage} değil {Kalan} kullanmalısınız,
{ Console.WriteLine($"Your subscription expires in {discountPercentage} days."); discountPercentage = 10; }
Siz eğer 5 gün varsa yüzde 10 indirim vereyim diyorsunuz, yazdığınız kodda önce kaç gün kaldığını kontrol ediyorsunuz, sonra yapmanız gereken indirim miktarını belirlemek çünkü belirlemezseniz 0 indirim miktarı ile mesaj yayınlarsınız.
 
ahh çok teşekkürler, bir siz gördünüz nasıl gözümden kaçmış

siz de fark etmişsiniz, yav kaç saattir görmüyorum teşekkürler
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…