Göreviniz, belirtilen sayıda 'hece' ile mantıklı bir şekilde anlaşılır bir kelime oluşturmaktır. Program her çalıştırıldığında muhtemelen farklı bir saçma kelime ile sonuçlanır.
Pronounceability
Belirgin bir kelime, muhtemelen iki ünsüz grup arasında sandviçlenmiş bir sesli harf grubundan oluşan hecelerden oluşur. Tüm sesler tüm konumlarda belirgin değildir ve bu dile bağlı olduğundan, İngilizce konuşanların anlayabileceği desenler kullanacağız
Başlangıç ünsüz grupları:
b c d f g h j k l m n p r s t v w y z bl br ch cl cr dr fl fr gh gl gn gr kn ph pl pr qu sc sh sk sl sm sn sp st th tr wh wr sch scr shm shr squ str thr
Sesli Harf Grupları:
a e i o u ae ai ao au ea ee ei ab ia yani io oa oe oi oo ou ue ui
Ünsüz grupları sonlandırma:
bcdfglmnprstxz bt ch ck ct ft gh gn lb ld lf lk ll lm ln lp lt mb mn mp nk ng nt ph pt rb rc rd rf rg rk rl rm rn rp rt rv rz sh sk sp ss st zz lch lth rch rsh rst rth sch tch
Heceleri Birleştirmek
Hem başlangıç hem de bitiş ünsüz grupları genel olarak isteğe bağlıdır, ancak bir sesli harfle başlamadan hemen önce bir sesli harfle hece bir bitiş koyamazsınız.
feragat
Basitlik adına, vakum, ksilofon, anımsatıcı, pterodaktil, güzel, falan, onlar, vay ve çoğu çoğul gibi bazı İngilizce kelimeler aslında bu şekilde üretilemez.
genel bakış
Bu anahtarı kullanarak olası hece desenleri:
(SC) = başlangıç ünsüz; (V) = ünlü grubu; (EC) = bitiş ünsüz
Bir hece için:
- (SC), (V) (AT)
- (V) (AT)
- (SC), (V)
- (V)
İki heceli:
- (SC), (V) (AT) (SC), (V) (AT)
- (SC), (V) (AT) (SC), (V)
- (SC), (V) (AT) (V) (AT)
(SC), (V) (AT) (V)
(SC), (V) (SC), (V) (AT)
(SC), (V) (SC), (V)
(V) (AT) (SC), (V) (AT)
- (V) (AT) (SC), (V)
- (V) (AT) (V) (AK)
(V) (AT) (V)
(V) (SC), (V) (AT)
- (V) (SC), (V)
... ve bunun gibi
Örnekler
1 hece
- charst
- Tigh'ı
- shriegn
- EESS
- Shue
- oo
- cheezz
2 hece
- jazzcrap
- whylprog
- yemek yiyor
- umba
- ola
- Sahip olmak
- ingsoc
- greespheurz
- bleuspoo
3 hece
- brokiompic
- squirdshlicker
- Başkent
- opengtrass
- doublethink
- büyük kardeş
- phoebliaptmoo
- skolfblauquent
4 hece
- strawishoepick
- patchworkzombie
- prearneajoomie
- slephotoschou
- doubleplusgood
Kodlama
Girdi: oluşturulacak hece sayısı için bir tam sayı
Çıktı: birçok hecenin uzun olduğu (muhtemelen) saçma bir kelime
kurallar
- Bir çeşit (psuedo) rastgelelik gereklidir. Hecelerin tüm kombinasyonlarının (teorik olarak) oluşturulması mümkün olmalıdır, ancak dağılım tekdüzen olmak zorunda değildir.
- Jeneratörünüzün periyodik olmadığını varsayabilirsiniz, bu nedenle olası her sözcüğü oluşturmak için matematiksel olarak mümkün olması gerekmez (Gerçekte yeterince uzun bir süre olmayabilir) ve herhangi bir kanıt sunmanıza gerek yoktur. jeneratör aslında her olası kelimeyi üretebilir.
- Jeneratörünüz aslında en az 255 farklı değer üretebilmelidir, böylece jeneratör her çağrıldığında 4 değerini döndüremezsiniz .
- Nihayetinde önemli olan, yukarıdaki tüm harf gruplarını bir şekilde kodunuza dahil etmeniz, her harf grubunun sıfırdan farklı bir olasılık olasılığına sahip olması ve her hece deseninin sıfır olmayan bir olasılık olasılığına sahip olmasıdır (gerçek rastgele olma durumunda).
- 16 adede kadar hece kelimesini desteklemelisiniz
- Hecelerin birleştirilmesine ilişkin kurallara ek olarak, çıkış kelimesi aşağıdakilere sahip olmamalıdır:
- 3 ardışık sesli harf (
a
e
i
o
u
; buqu
kelimeler için olabilir ) - 3 ardışık eşleşen ünsüz
- 3 ardışık sesli harf (
İyi şanslar!
Bunun birkaç nedenden dolayı belirgin bir kelime üretmekten farklı olduğunu unutmayın :
- Sıkı 10 harfli bir gereksinim yerine girdiyle belirtilen değişken hece sayısı.
- Bu meydan okuma (akıllıca) kodlanması gereken ayrıntılı olmayan harf grupları ekler ve daha fazla heceye izin verir, bu nedenle kod sadece diğer meydan okumadan kopyalanamaz
- Squirdshlicker. Daha da anlatmalı mıyım?
Ben de dupe kontrol unuttum, ama bu önemli değil tablo için yeterince yeni getiriyor. Sonuçta, yüzlerce kine varyant zorluğu var.