Uluslararası Sinyal Kodları bayrak alfabesi , gemiler tarafından iletişim için, özellikle statik sinyaller için kullanılır.
Zorluğunuz STDIN'den veya bağımsız değişken olarak bir dize alacak bir program veya işlev yazmak ve karşılık gelen metni ICS bayrağı alfabesinde görüntülemek. Diliniz ekranda görüntülenmiyorsa, bir dosyaya kaydetmek kabul edilebilir.
Programınız veya işleviniz, büyük ve küçük harf AZ ile Boşluk ve Yeni Satır harflerini destekleyecektir . Diğer karakterlerle davranış tanımsız.
Gösterge, yatay olarak en az 8, dikey olarak 6 bayrak gösterebilecek kadar büyük olmalıdır . Yeni satıra gelmeden önce sağ kenara ulaşılırsa veya mesaj ekrana dikey olarak sığmayacak kadar uzunsa, davranış tanımsızdır.
Bayrak alfabesi aşağıda gösterildiği gibidir (Roma harfleri sadece referans içindir, çıktıda gerekli değildir.)
boyutlar
Bu bayrakların boyutları için evrensel olarak kabul edilmiş bir standart yoktur, bu nedenle bu meydan okuma için aşağıdakiler geçerli olacaktır:
Bayraklar, yatay ve dikey olarak aralarında 30 piksel boşluk olacak şekilde 60x60 piksel olmalıdır.
A ve B'de kesilmiş kırlangıç kuyruğu 15 piksel derinliğinde olacaktır.
Diğer tüm çizgiler yatay, dikey veya 45 derecede olmalıdır.
Özellikler, bayrağın 3,4,5 veya 6 karelik bir hayali NxN ızgarasına bölünmesi ile konumlandırılacaktır. Daha fazla açıklama için yukarıdaki resme bakın:
A, E, H, K, L ve U 2x2 ızgaraya dayanır: her renk bölgesinin genişliği 30 piksel olacaktır. Ayrıca F'deki elmasın noktaları bayrağın her iki tarafı boyunca yarıya kadar olmalıdır.
J ve T 3x3 ızgaraya dayanır: her bant 20 piksel olmalıdır.
P, N ve S 4x4 ızgaraya dayanmaktadır. Ayrıca Y'nin diyagonal çizgileri bayrağın kenarlarını 4'e böler.
C, D, R ve X, 5x5'lik bir ızgaraya dayanacaktır. Haç bantları ve kolları 12 piksel genişliğinde olacaktır.
G, W, M, V, 6x6 bir ızgaraya dayanmaktadır. G bantları ve W kenarlıkları 10 piksel genişliğinde olacaktır. M ve V üzerindeki haç kolları, bayrağın her bir kenarının ilk ve son 10 pikselini kaplayacak ve uzun kenar boyunca 40 piksel boyutunda üçgen bölgeler bırakacaktır.
I dairesi bayrağın ortasında olacak ve çapı 30 piksel olacaktır.
Yukarıdaki metinden +/- 1 piksel hataya izin verilir. Diliniz yalnızca ölçeklenebilir grafikleri destekliyorsa, "pikselleri" "birimler" olarak yorumlayabilirsiniz.
Renkler
Renkler, dilinize veya belgelerine göre kırmızı, beyaz, mavi, sarı ve siyah olmalıdır. Diliniz renkleri tanımlamazsa, aşağıdakileri kullanabilirsiniz: Kırmızı FF0000, Beyaz FFFFFF, Mavi 0000FF, Sarı FFFF00, Siyah 0000000.
Arka plan gri olmalıdır (r, g ve b kanalları% 25 ila% 75 yoğunluk arasında eşittir.)
Puanlama / Loopholes
Bu kodgolf. Bayt cinsinden en kısa kod kazanır.
Standart boşluklara izin verilmez.
Bayrakları görüntülemek için yerleşik veya kütüphane işlevi kullanılamaz. Çıktı metinsiz olacaktır (ve özellikle bayrak şeklini oluşturmak için unicode karakterler kullanılmayacaktır.)
Misal
JFK got
my VHS
PC
and XLR
web quiz
aşağıdakileri üretmelidir