Poomine

Allikas: Lambda

Poomine

Tuleb programmeerida sõnaarvamismäng "Poomine" (i.k hangman). Mängu käigus tuleb kasutajal/mängijal ära arvata eelnevalt sisestatud sõna. Programm kuvab mänguväljaku ja võimalab käsurea abil seda mängida. Mänguväljakul visualiseeritakse ka kriipsujuku (edaspidi 'hangman'), mis siis visualiseerib protsessi.

Mänguväljaku näide

 |
 O
- -
 |
/ \

Poomsõna:     _ _ _ _ _ - _ _ _ _ D

Ajalugu:        Z X C V B D

 ... VALESTI!

Arva >

Põhiosa - 5 punkti

Mänguväli

  • 'Hangman' koosneb 6 + 1 osast.
  • Mängu alguses peab olema 'hangman'-il olema üks jalg. Ei tohi olla nn. täiesti tühi või kuvamata.
  • 'hangman'-il on kokku 6 kehaosa: 2 jalga, keha, 2 kätt ja pea
  • 7. osana on siis "köis" - mis on ühtlasi ka mängija viimane viga ja mängija kaotab

Poomsõna

  • Arvatav sõna või sõnad antakse programmile ette käsurea parameetrina.
  • Etteantud sõna kuvatakse mänguväljal, koos "hangman"-iga.
    • Tähed kuvatakse harvendatuna selliselt, et iga tähe vahel on (vähemalt) üks tühik.
    • Tähed ise kuvatakse mängu alguses "alakriipsudena", sest neid peab mängija hakkama ära arvama.

Mängimine

  • Programm võimaldab mängijal tähti pakkuma hakata.
    • Kui mängija arvab mõne tähe ära, siis kuvatakse kõik selle tähe esinemised etteantud sõnas suurtähtedena.
    • Kui mängija pakkus tähte, mida sõna/-des ei olnud - täiendatakse "hangman"-i
  • Mäng kestab kuni:
    • Mängija on kõik tähed ära arvanud või
    • Pakub 7 korda valesti ja saab nn. "üles poodud"

Lisa - 3 punkti

  • Programm kontrollib mängimiseks sisestatud sõna/-de vormingut
    • Lubab kasutada ainult tähemärke (mitte erimärke)
    • Erimärkidest võib kasutada sidekriipsu ja tühikut. Neid mängija arvama ei pea ja kuvatakse kohe mängu alguses välja. Mõlemat märki tähistatakse seejuures sidekriipsuga.
  • Mäng kuvab vastavad teated kui ...
    • Arvamisele kuuluv sõna sisaldab mitte-lubatud märke
    • Pakutud tähte sõnas ei olnud. Loomulikult täiendatakse ka 'hangman'-i
    • Kui mängija on korrektselt sõna ära arvanud - võitnud
    • Kui mängija ei arvanud etteantud kordade jooksul sõna ära - kaotas
    • Kui mäng sai läbi (pärast võitu/kaotust)

Lisa - 2 punkti

  • Mäng suletakse, kui kasutaja sisestab "exit"
  • Kasutaja võib ühe korra käigu tagasi võtta, sisestades "undo"
    • Kui mängija üritab "undo"-t teha rohkem kui ühe korra - kuvatakse vastav teade, et seda rohkem teha ei saa