Malaclatin

Malaclatin

Közepes

Bevezetés

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!

Utasítások

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:

  • magánhangzók: az a, e, i, o és u betűk
  • mássalhangzók: az angol ábécé többi 21 betűje

1. szabály

Ha 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)

2. szabály

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)

3. szabály

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)

4. szabály

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)
Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Unison Exercism

Készen állsz elkezdeni a(z) Malaclatin feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Unison nyelvet 53 feladat segítségével, valódi emberi mentorálással, mindez ingyen.

Mélyelemzés: Malaclatin!

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?