Skip to content

Programátorská hádanka Mystery Cache

This cache has been archived.

rchrdblz: Archivujem

More
Hidden : 8/29/2020
Difficulty:
2.5 out of 5
Terrain:
1.5 out of 5

Size: Size:   small (small)

Join now to view geocache location details. It's free!

Watch

How Geocaching Works

Please note Use of geocaching.com services is subject to the terms and conditions in our disclaimer.

Geocache Description:


Programovací jazyk C

Programovací jazyk C je štandardný programovací jazyk vyvinutý začiatkom sedemdesiatych rokov. Autorom jazyka je Dennis Ritchie. Pôvodne bol určený pre použitie na operačných systémoch UNIX. Odvtedy sa rozšíril na mnohé iné operačné systémy a je jedným z najpoužívanejších programovacích jazykov. C sa cení vďaka jeho efektívnosti a je najpopulárnejším jazykom na písanie systémového softvéru, hoci sa používa aj na tvorbu aplikačného softvéru. Tiež sa bežne používa pri výuke programovania, hoci nie je určený pre úplných začiatočníkov.

Príklad programu

#include <stdio.h>

int main(void)
{
for (int i = 0; i < 5; i++){
printf("i = %d\n", i);
}
return 0;
}

Tento program demonštruje cyklus for. Používa premennú i, ktorá má počiatočnú hodnotu 0 a táto hodnota sa v každom opakovaní cyklu zväčšuje o 1. Na začiatku každého behu cyklu sa testuje podmienka, či i je menšie ako 5. Ak je táto podmienka splnená, telo cyklu prebehne, ináč sa cyklus skončí. Z toho jasne vyplýva, že náš cyklus bude mať 5 opakovaní. Pre názornosť sa zakaždým vypíše aktuálna hodnota premennej i.

Výstup programu:

i = 0
i = 1
i = 2
i = 3
i = 4

- Wikipedia

 

Ako získať správne súradnice kešky?

Tvojou úlohou bude dekódovať dva reťazce a to tak, že použiješ na to nižšie uvedený program napísaný v C, ktorý má funkciu, ktorá berie reťazec ako vstup a na výstupe má dekódovaný reťazec. Avšak má to háčik. Tento program nepôjde skompilovať a budeš ju musieť opraviť. Až po tom ako ju opravíš, ju budeš vedieť spustiť a získať tým súradnice. Kód odporúčam upravovať a spúšťať v niektorom z online C kompilátorov (googliť: online c compiler).

 

#include <studio.h>
#include <string.h>
#include <stdlib.h>

char * decode(const char * str)
{
int len = strlen(str);
char * result = (char *) malloc(len + 1)
for(int i = (len - 1); i >= 0; i--)
result[(len - 1) - i] = str - (char) 10;
result[len] = '\0';
return result;
}

int main()
{
printf("Súradnice, na ktorej sa nachádza keška sú:\n");
printf("N47 %s E018 %s\n", decode("A=<8??"), decode("?B?8<;"));
return 0;
}

Additional Hints (Decrypt)

cbqbmevil qebg

Decryption Key

A|B|C|D|E|F|G|H|I|J|K|L|M
-------------------------
N|O|P|Q|R|S|T|U|V|W|X|Y|Z

(letter above equals below, and vice versa)