A szüleid kihívtak téged és a testvéredet egy két a kettő elleni kosárlabdajátékra. Bízva abban, hogy nyerni fognak, hagyták, hogy megszerezd az első pár pontot, de aztán átvették a játék irányítását. Mivel egy kis lendületre van szükséged, elkezdesz Pig Latin nyelven beszélni, ami egy kitalált gyereknyelv, és amit nehezen értenek meg azok, akik nem gyerekek. Ez megadja neked az előnyt, hogy felülkerekedj a szüleiden!
A feladatod, hogy a szöveget angolról Pig Latinra fordítsd. A fordítást négy szabály határozza meg, amelyek egy szó elején a magánhangzók és a mássalhangzók mintázatát vizsgálják. Ezek a szabályok minden szónál a magánhangzók és a mássalhangzók használatát nézik:
a, e, i, o és u betűkHa egy szó magánhangzóval kezdődik, vagy "xr" vagy "yt" betűkkel kezdődik, a szó végére egy "ay" hangot teszünk.
Például:
"apple" -> "appleay" (magánhangzóval kezdődik)"xray" -> "xrayay" ("xr" betűkkel kezdődik)"yttria" -> "yttriaay" ("yt" betűkkel kezdődik)Ha egy szó egy vagy több mássalhangzóval kezdődik, először ezeket a mássalhangzókat a szó végére tesszük, majd a szó végére egy "ay" hangot teszünk.
Például:
"pig" -> "igp" -> "igpay" (egyetlen mássalhangzóval kezdődik)"chair" -> "airch" -> "airchay" (több mássalhangzóval kezdődik)"thrush" -> "ushthr" -> "ushthray" (több mássalhangzóval kezdődik)Ha egy szó nulla vagy több mássalhangzóval kezdődik, amelyeket "qu" követ, először ezeket a mássalhangzókat (ha vannak) és a "qu" részt a szó végére tesszük, majd a szó végére egy "ay" hangot teszünk.
Például:
"quick" -> "ickqu" -> "ickquay" ("qu" betűkkel kezdődik, előtte nincs mássalhangzó)"square" -> "aresqu" -> "aresquay" (egy mássalhangzóval kezdődik, amelyet "qu" követ)Ha egy szó egy vagy több mássalhangzóval kezdődik, amelyeket "y" követ, először a "y" előtti mássalhangzókat a szó végére tesszük, majd a szó végére egy "ay" hangot teszünk.
Néhány példa:
"my" -> "ym" -> "ymay" (egyetlen mássalhangzóval kezdődik, amelyet "y" követ)"rhythm" -> "ythmrh" -> "ythmrhay" (több mássalhangzóval kezdődik, amelyet "y" követ)Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) YAMLScript nyelvet 60 feladat segítségével, valódi emberi mentorálással, mindez ingyen.
Megnézzük a mintailesztést és a reguláris kifejezéseket, valamint egy szép Prolog-megoldást, és feltesszük a kérdést: megoldottad a feladatot, vagy csak átmentél a teszteken?