C#

C# Artık Yıl Kontrolü

Herkese merhaba, C# yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda girilen bir yılın artık yıl olup olmadığını tespit etmeyi anlatacağım. Hadi başlayalım !

Artık Yıl Nedir?

Artık yıllar yılın 365 değil 366 gün olduğu yani Şubat ayının 29 çektiği yıllardır. Her 4 senede bir Şubat ayı 29 çeker yani o yıl artık yıl olur ve hangi yılların artık yıl olduğunun tespiti için bir yolumuz bulunmaktadır.

Artık Yıl Olma Şartı

Bir yılın artık yıl olup olmadığını anlayabilmemiz için o yılın 4’e tam bölünmesi ile birlikte 100’e tam bölünememesi veya 400’e tam bölünebilmesi şartı vardır. Örneğin 2012 artık yıldır çünkü 100’e tam bölünemez ve 4’e tam bölünür. 2024’te artık yıl olacak çünkü 4’e tam bölünür. Bizde bu kuralı kullanarak kullanıcıdan bir yıl alalım ve girilen yılın artık yıl olup olmadığını tespit edelim. Öncelikle kullanıcıdan bir yıl değeri alıp bunu bir değişkene atayalım.

Console.Write("Yıl Giriniz: ");
int yil = Convert.ToInt32(Console.ReadLine());

Bir sayının 4’e tam bölünüp bölünmediğini anlayabilmek için mod işlemi kullanabiliriz. Mod işlemi bir sayının başka bir sayıya bölümünden kalanı verdiği ve bir sayı başka bir sayıya tam bölünebiliyorsa kalanın sıfır olması gerektiği için mod işleminin sonucunun sıfıra eşit olup olmadığını kontrol ederek o sayının diğer sayıya tam bölünüp bölünmediğini anlayabiliriz. Ayrıca artık yıl kurallarından birisi 100’e tam bölünmemesi idi. Bunuda yine mod kullanarak yapabiliriz fakat bir sayının başka bir sayıya tam bölünememesi için kalanın sıfırdan farklı olması gerekmekte. Sıfır olursa zaten tam bölünebilir demekti, sıfırdan farklı olursa da tam bölünemez demektir. Bu kurallara göre kullanıcının girdiği yıl değerinin 4’e tam bölünüp 100’e tam bölünmemesi yada 400’e tam bölünmesi kuralını if kullanarak kontrol edelim. Bu şart sağlanırsa “Girdiğiniz Yıl Artık Yıldır”, sağlanmıyorsa da “Girdiğiniz Yıl Artık Yıl Değildir” yazdıralım.

if (yil % 4 == 0 && yil % 100 != 0 || yil % 400 == 0)
    Console.WriteLine("Girdiğiniz Yıl Artık Yıldır");
else
    Console.WriteLine("Girdiğiniz Yıl Artık Yıl Değildir");

Tüm Kodlar

Yazmış olduğum bu kod sayesinde yıl değerinin 4’e tam bölünüp 100’e tam bölünmemesi yada 400’e tam bölünmesi durumunda artık yıl olduğunu, aksi halde artık yıl olmadığını tespit ettik. Yazdığımız kodları aşağıya bırakıyorum.

Console.Write("Yıl Giriniz: ");
int yil = Convert.ToInt32(Console.ReadLine());
if (yil % 4 == 0 && yil % 100 != 0 || yil % 400 == 0)
    Console.WriteLine("Girdiğiniz Yıl Artık Yıldır");
else
    Console.WriteLine("Girdiğiniz Yıl Artık Yıl Değildir");

Tüm C# yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.

Skorumuz:
Oy Vermek İçin Tıklayın
[Toplam: 0 Ortalama: 0]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu