TL sözcük, karakterleri alfabedeki sırasına göre 1-29 kuruş degeri verildiğinde toplam 100 kuruş / 1TL olan sözcüklerdir.
Örneğin 'altyapı' TL sözcüktür cunku:
a => 1 l => 15 t => 24 y => 28 a => 1 p => 20 ı => 11
1 15 24 28 1 20 11 toplamı 100 kuruştur.
ppppp Türkçe bir sözcük olmasa da TL sözcüktür cunku
p => 20, 5 adetten 100 kuruş yapar.
Verilen bir sözcüğün TL olup olmadığını test eden program yazınız.
1- Türkçe'deki â gibi standart alfabe dışındaki karakterler dikkate alınmaz. 29 karakterlik standart abcçdefgğhıijklmnoöprsştuüvyz alfabesi referanstır.
2- "buzlu pist" gibi boşluklu sözcükler dikkate alınmaz 'akordeon' gibi tek parça sözcükler dikkate alınacaktır (Not: akordeon TL sözcüktür :)
Not: Bu bir ödev sorusu değildir. Kodlamasına güvenen arkadaşların kısa ve öz kod ile kendini gösterebileceği egzersiz ve söyleşi amaçlı bir sorudur.
< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 8 Eylül 2020; 23:12:32 >
soru zor olmamakla birlikte Türkçe alfabeyi Hash yapısında tanımlamak sorunun en zor kısmı.O zor kısmı en pratik sekilde kotarmak için Türkçe alfabeyi önce array olarak tanımladım sonra Raku 'nun geniş array fonksiyonları sayesinde arraydan Hash 'e dönüştürdüm. Raku'yu bilmeseniz bile anlaşılabilecek şu şekilde:
my @t="abcçdefgğhıijklmnoöprsştuüvyz".comb;
buradaki @t, array ve sondaki .comb ise string'i array'e dönüştürme fonksiyonu
my %hash = %(@t.kv.reverse);
ise hash'e dönüştürme kodu. Raku'da @ array, % hash değişkenleri belirten önek / prefix.@t.kv 'daki kv, array'e uygulandığında array endeks ve değerini verir yani 0,"a",1,"b",2,"c" ... gibi. buna reverse uygulandığında ise "a", 0, "b", 1, "c", 2 şeklinde endeks ve değeri ters cevirir ve bu da istediğimiz hash degeridir, artık verilen sözcüğün alfabedeki endeksini bulabiliriz.sorunun en zor kısmımnı bu şekilde çözdükten sonra soruyu sadece 1 satırda çözmek mümkün :)https://i.ibb.co/4pW0WYT/raku-tl-sozcuk-bul.png" target="_blank">< Resime gitmek için tıklayın >
< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 12 Eylül 2020; 23:49:8 >
Örneğin 'altyapı' TL sözcüktür cunku:
a => 1
l => 15
t => 24
y => 28
a => 1
p => 20
ı => 11
1 15 24 28 1 20 11 toplamı 100 kuruştur.
ppppp Türkçe bir sözcük olmasa da TL sözcüktür cunku
p => 20, 5 adetten 100 kuruş yapar.
Verilen bir sözcüğün TL olup olmadığını test eden program yazınız.
1- Türkçe'deki â gibi standart alfabe dışındaki karakterler dikkate alınmaz. 29 karakterlik standart abcçdefgğhıijklmnoöprsştuüvyz alfabesi referanstır.
2- "buzlu pist" gibi boşluklu sözcükler dikkate alınmaz 'akordeon' gibi tek parça sözcükler dikkate alınacaktır (Not: akordeon TL sözcüktür :)
Not: Bu bir ödev sorusu değildir. Kodlamasına güvenen arkadaşların kısa ve öz kod ile kendini gösterebileceği egzersiz ve söyleşi amaçlı bir sorudur.
< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 8 Eylül 2020; 23:12:32 >
< Bu ileti mini sürüm kullanılarak atıldı >