Bu, Downgoat'ın Sandbox'daki sorularından esinlenerek, gün / ay biçimini kullanan insanlar için 31 Nisan'ı Pi günü olarak eklemesini önerdim, sadece bana 31 Nisan olmadığını bildirmesi için!
Geçersiz olabilecek ay / gün biçiminde bir tarih dizesi verildiğinde , rollover'ı kullanarak doğru tarihi çıktılayın. (Önce ayı, ardından günü çevirin).
Örnekler:
"15/43" - Bu, 15. ayın 43. günü olarak okunur. İlk olarak, ay boyunca bir sonraki yıla yuvarlanıyoruz, bu yüzden 3 (Mart) ile bitiyoruz. Şimdi, Mart ayının sadece 31 günü olduğundan, ekstra günleri Nisan ayına devrediyoruz , bu nedenle gerçek tarihi "4/12" (12 Nisan) olarak çıkardık .
"3/16" - Bu geçerli bir tarih (16 Mart). Olduğu gibi iade edin.
"12/64" - Ah, 64 Aralık'tan pek çok düşkün anı ... Aralık 31 gün, Ocak 31 gün var, bu yüzden gerçekten demek istediğim "2/2" (2 Şubat).
"19/99" - İlk olarak 19, 7 olur (Temmuz). Temmuz 31 gün, Ağustos 31 gün, Eylül 30 gün vardır, bu nedenle çıktı "10/7" (7 Ekim).
"1/99999" - Bir yılda 365 gün vardır. 99999 (mod 365) = 354. Yılın 354 günü "12/20" .
"9999999/10" - Görünüşe göre 9999999 (mod 12) = 3, yani bu "3/10" (10 Mart).
Kriter:
Giriş ayı> 0 tamsayısıdır. Giriş günü> 0 tamsayısıdır. Yıl asla belirtilmemelidir, çünkü başa çıkmak için artık yıl yoktur.
Güncelleme:
Meydan okumayı aşırı derecede basitleştireceğini düşündüğüm için, Java Takvim sınıfındaki gibi takvim işlevleri yasaklandı. Tarih ayrıştırma / biçimlendirme işlevlerine yine de izin verilir.
1/99999vermelidir 12/19.
