Bir doğum tarihini (ay ve ayın günü) girdi olarak alan ve batı zodyakının ilgili işaretini, öğesini ve kalitesini çıktılayan bir program yazın . Bu zorluğun amaçları için, bunlar tam olarak bağlantılı wikipedia sayfasındaki tabloda olduğu gibi tanımlanır:
Sign Date Range Element Quality
Aries March 21 to April 19 Fire Cardinal
Taurus April 20 to May 20 Earth Fixed
Gemini May 21 to June 21 Air Mutable
Cancer June 22 to July 22 Water Cardinal
Leo July 23 to August 22 Fire Fixed
Virgo August 23 to September 22 Earth Mutable
Libra September 23 to October 23 Air Cardinal
Scorpio October 24 to November 20 Water Fixed
Sagittarius November 21 to December 22 Fire Mutable
Capricorn December 23 to January 20 Earth Cardinal
Aquarius January 21 to February 21 Air Fixed
Pisces February 22 to March 20 Water Mutable
kurallar
- İşaret, eleman ve kalite giriş tarihinden tam olarak wikipedia tablosuna göre hesaplanacaktır.
- Giriş tarihi biçimi üzerinde biraz özgürlük veriyorum (aşağıdaki Giriş bölümüne bakın). Hangi formatta kullandığınızı cevabınızda açıkça belirtmelisiniz.
- Geçersiz bir tarih belirtilirse (ayrıştırılamayan tarih veya ayın veya ayın günü aralığın dışında), program mesajla birlikte çıkar
Invalid date. - Program artık yılları doğru şekilde işlemelidir. yani 29 Şubat giriş ise, çıkış doğru olmalıdır
Pisces, Water, Mutable. - Dilinizin Tarih kitaplıklarına / API'larına izin verilir, ancak özellikle burç belirtilerini hesaplayan API'lere izin verilmez.
- Artık komik olmayan standart "boşluklar"
- Bu kod golf , bu yüzden bayttaki en kısa cevap kazanır.
Giriş
- Program, giriş tarihini STDIN, komut satırı, ortam değişkenleri veya seçtiğiniz dil için uygun olan herhangi bir yöntemden okuyabilir.
- Bu, öncelikle ayrıştırma ayrıştırma alıştırması değildir, bu nedenle, giriş dizesi, diğer değerlerden (yıl veya saat gibi) değil, yalnızca ay ve ayın günü bileşenlerinden oluştuğu sürece, seçtiğiniz herhangi bir biçimde sağlanabilir. . Örneğin,
Jul 24veya24th of Julyveya7/24veya24/07herhangi bir format uygundur. Giriş biçimi seçiminizle eşleşmeyen bir girdi girilirse,Invalid datehata atılmalıdır.
Çıktı
- Program STDOUT, iletişim kutusu veya seçtiğiniz dil için uygun olan herhangi bir görüntüleme yöntemine gönderilecektir.
- Çıktı biçimi, virgül ve boşlukla ayrılmış işaret, öğe ve kalite olacaktır:
Sign, Element, Quality
Örnekler
Input Output
1/1 Capricorn, Earth, Cardinal
2/29 Pisces, Water, Mutable
7/24 Leo, Fire, Fixed
13/1 Invalid date
2/31 Invalid date
-1/-1 Invalid date
1st of Golfember Invalid date
Jan 21 -> 21. Feb 5 -> 36) Geçerli bir giriş biçimi mi?