C# yazılarıma çok düzenli olarak devam edemesem de bir süredir aklımda olan basit bir uygulamayı paylaşmak için yeterli zamanım olduğunu düşünerek yeni bir başlık açmak istedim. Programlama dillerinin framework'leri içerisinde tarihsel ihtiyaçları giderecek hazır metodlar bulunur ve satırlarca kod yazarak bulabileceğimiz bazı bilgileri bu metodlar sayesinde tek bir satır ile kolayca bulabiliriz.
Bildiğimiz gibi Şubat ayı her dört yılda bir 29 gün çeker ve bu yıllar artık yıl olarak isimlendirilir. C# programlama dilinde artık yılları tespit edebilmek için DateTime.IsLeapYear() metodu kullanılır. Parametre olarak hangi yılın artık yılın artık yıl olup olmadığı verilir ve metod, o tamsayının artık yıl olup olmamasına göre bir boolean ifade döndürür.
Örnek 1: 2000 yılı artık bir yıl mıdır?
if (DateTime.IsLeapYear(2000))
System.Console.WriteLine("2000 yılı artık bir yıldır");
else
System.Console.WriteLine("2000 yılı artık bir yıl değildir");
Çıktı: 2000 yılı artık bir yıldır
Örnek 2: 2000 yılı ve sonrası (bugüne kadar) olan artık yılları yazdırın.
for (int i=2000; i<=DateTime.Now.Year; i++)
{
if (DateTime.IsLeapYear(i))
System.Console.WriteLine(i + " yılı artık bir yıldır");
}
Çıktı:
2000 yılı artık bir yıldır
2004 yılı artık bir yıldır
2008 yılı artık bir yıldır
2012 yılı artık bir yıldır
2016 yılı artık bir yıldır
2020 yılı artık bir yıldır
Editör editi: önceki bazı diğer benzer başlıklar için;
bkz: C# DateTime Kullanımı ve Örnekleri
bkz: C# ile iki tarih arasında rastgele tarih üretmek
bkz: C# ArrayList elemanlarını tarihe göre sıralamak
bkz: C# ile iki tarih arasında kaç gün olduğunu bulmak
bkz: ASP.NET'te sadece tarihi yazmak (saati silmek)
bkz: C# Main metodundaki string[] args nedir?