Stran 1 od 1

Neskončna pokrajina

Objavljeno: Ne Apr 30, 2017 8:07 pm
Napisal/-a hinkopihpih
Z Daljnega vzhoda smo uvozili poceni 3D skener — napravo, ki zna meriti višino točk na
neki pravokotni površini. Zal pa so izdelovalci izdelavo programskega vmesnika prepu-
stili najcenejšemu podizvajalcu (pa še tega so očitno poiskali nekje med učenci lokalne
osnovne šole), zato nam je na voljo le ena sama funkcija za merjenje — Visina(x, y).
Tej pošljemo celoštevilski koordinati točke, ki ji želimo izmeriti višino, vrne pa nam —
seveda — izmerjeno višino. Funkcija je takšne oblike:
function Visina(x, y: integer): integer; { v pascalu }
int Visina(int x, int y); /* v C/C++ in podobnih jezikih */
def Visina(x, y): . . . # v pythonu; vrne int

Drugih informacij nismo dobili, zato ne vemo niti, kaj pomenita števili, ki ju pošljemo
v funkcijo (v kakšnih enotah sta podani). S poskušanjem smo ugotovili le, da vrednosti
ne smeta biti negativni (potem se program sesuje) in da je izmerjena vrednost vedno
večja ali enaka 0. S postavljanjem različnih elementov na začetno koordinato smo tudi
hitro ugotovili, kako program meri višino. Ne uspe pa nam umeriti koordinatnega sistema,
ker je genialni programer funkcijo Visina napisal tako, da ob neveljavnih pozitivnih
koordinatah vrne vrednost 0. Zato bomo problem predali tebi.
Napiši podprogram Poisci(ciljnaVisina), ki bo poiskal in izpisal koordinate (x, y)
polja, ki je visoko toliko kot podana vrednost (ciljnaVisina). Edino zagotovilo, ki ga imaš,
je, da zagotovo obstajata nenegativni koordinati x in y, pri katerih bo funkcija Visina(x, y)
vrnila vrednost ciljnaVisina. Ce ti je lažje, lahko koordinate zapišeš v datoteko, namesto
da bi jih izpisal na zaslon.
Upoštevaj, da je v mreži lahko veliko polj višine 0, torej se ne moreš zanašati na
to, da rezultat 0 pomeni, da si funkcijo Visina poklical z neveljavnimi koordinatami.
Upoštevaj tudi, da je delovanje skenerja relativno počasno in da zato ne moreš poklicati
funkcije Visina kar za vse možne celo številske koordinate (torej za vse take koordinate,
ki jih je mogoče predstaviti z vrednostjo tipa integer oz. int).

Re: Neskončna pokrajina

Objavljeno: Ne Apr 30, 2017 8:54 pm
Napisal/-a Ptolomej
Ali je ta anketa direktno povezana z nalogo? Mogoče daj to anketo pod posebno temo.