Programavimo pamokėlės

pamokelesm

Mokymų ciklas „Programavimo pamokėlės" skirtos visiems, kurie nori išmokti programuoti.

IT galvosūkiai

itgalvosukiai

Konkurso tikslas – skatinti moksleivius domėtis IT sprendžiant įvairiausius galvosūkius.

Informikas

informikasm

Konkurso tikslas – supažindinti moksleivius su menu informacinėse technologijose ir mūsų talismanu.

Dr. J. P. Kazicko konkursai

kkonkursai

Žemaitijos, Aukštaitijos, Suvalkijos ir Dzūkijos regionuose vykdomas IT konkursas.

       

Užduotis

Tikriausiai visi yra girdėję apie romėniškus skaičius. Tai skaičiai sudaryti iš lotyniškų raidžių, kai I atitinka 1, V – 5, X – 10, L – 50 ir t.t. Pats skaičius formuojamas vienų simbolių vertę sumuojant su kitų, štai taip: VIII = 8 (nes 5 + 1 + 1 + 1 = 8). Bet jei mažesnis skaičius eina prieš didesnį, tai tada jis ne pridedamas, o atimamas. Pvz.: IX = 9 (nes 10 – 1 = 9). Be to prieš didesnį skaičių gali eiti tik vienas mažesnis, todėl IIX variantas negalimas.

Vytas iš Vytėnų mėgo šią skaičių sistema, bet labiau už ją mėgo programuoti, todėl užsimanė sugalvoti savo sistemą kurią būtų lengviau patikrinti kompiuteriu. Šią savo sukurtą sistemą jis pavadino „Vytėniškais skaičiais“. Ji buvo panaši į romėniškus skaičius, bet neturėjo kitų romėniškų skaičių taisyklių, išskyrus čia aukščiau paminėtas. Be to ši skaičių sistema buvo užkoduota pagal lotynišką abėcėlę. A atitinka 1, B – 5, C – 25, D – 125 (53), E – 625 (54) ir t.t.

Deja, Vyto kompiuteris sugedo ir jis negalėjo patikrinti daugelio Vytėniškų skaičių. Tad jis kreipiasi pagalbos į jus ir prašo sukurti programą kuri galėtų konvertuoti vytėnišką skaičių į arabišką (tokį kokius mes naudojam dabar).

Duomenys

  • Duomenų failas vadinasi vyteniski.txt.
  • Pirmoje eilutėje yra skaičius N – kelių simbolių bus vytėniškas skaičius.
  • Antroje eilutėje yra pats skaičius.
  • Didžiosios ir mažosios raides turi būti suprastos vienodai.

Rezultatai

  • Rezultatų failas vadinasi arabiski.txt.
  • Rezultatų failas turi vieną eilutę, kurioje yra išvedamas arabiškas vytėniško skaičiaus atitikimas
  • Jei skaičius yra netaisyklingas, tai yra prieš didesnį skaičių iš eilės eina keli mažesni, tai tada išvesti „-1“ (minus vieną).

Ribojimai

  • Skaičius gali būti iki 1019.

Pradiniai duomenys vyteniski.txt

Rezultatai arabiski.txt

Pastabos

3

AaA

3

AaA = AAA = 3

4

ADaC

148

-1 + 125 - 1 + 25

4

ACAD

-1

C < D ir A < D, kadangi abu eina iš eilės prieš D, tai netinka

51

YZXYWXVWUVTUSTRSQRPQOPNOMNLMKLJKIJHIGHFGEFDECDBCABA

298023223876953125

 

Reikalavimai

  • Parašyti funkciją kuri gražina 1 simbolio vertę. (pvz.:  f(A) = 1; f(C) = 25).
  • Nenaudoti simbolių masyvų.

Failai

Papildoma informacija

  • Lygis: 3
  • Taškai: 10
Į viršų