Táto úloha je špeciálna. Nemusíš odovzdávať nič, vždy keď splníš level automaticky dostaneš body.
V minulom kole sme sa hrali s ChatGPT. Teraz ho skúsime presvedčiť aby nám splnil naše exaktné úlohy.
Táto úloha má rôzne levely. Cieľom každého levelu je aby ChatGPT odpovedal jedným konkrétnym slovom, alebo vetou. Výsledný výraz treba dodržať úplne. Takže ak ti má odpovedať ahoj, tak Ti level bude uznaný iba ak ti ChatGPT odpovie ahoj a nie Ahoj! ani AHOJ a ani ahoj, ako sa máš?. Má to ale jeden háčik. Nemôžeš použiť slová presne ako v zadaní, takže odpoveď ahoj nevieš dostať len príkazom typu povedz "ahoj", ale treba to viac premyslieť.
S ChatGPT ti odporúčame sa rozprávať po anglicky. Bude ti lepšie rozumieť avšak rovnako sa s ním vieš rozprávať aj po slovensky.
Skús submitovať čo najmenej. Určite nesubmituj to isté viackrát, nepomôže to.
Existuje 10 rôznych levelov. Za splnenie každého dostaneš 10 bodov.
Stránku s levelmi môžete nájsť na https://prask.ksp.sk/specialne/prask/8/2/4/.
V každom leveli bolo treba prinútiť ChatGPT, aby nám povedal jednu presnú frázu. Celkovo sa oplatilo s ním komunikovať po anglicky, lebo po angličtine rozumie lepšie (Mal omnoho viac anglických textov pri trénovaní).
Tu sú riešenia jednotlivých levelov:
V tomto leveli bolo treba napísať klasickú programátorskú frázu hello world. Dalo sa na to ísť viacerými spôsobmi. Napríklad ho
nechať preložiť “Ahoj Svet” do angličtiny. Alebo nechať vypísať výstup najjednoduchšieho programu.
Tento level sa dal vyriešiť podobne ako prvý. Jediný problém bol vo veľkosti písmen. To sme mohli vyriešiť frázou alternating case,
alebo tak, že sme mu povedali AhOj SvEt a tiež to niekedy pochopil.
say only the translation of "AhOj SvEt" to english. Write the output in alternating case
Tento level sa dal riešiť viac menej rovnako ako prvý. Treba mu povedať, že má pozdraviť 5 krát a potom nech to celé dá do 1 riadku.
say "ahoj" in english to me 5 times in 1 row
Opäť využijeme trik s prekladaním
say only the translation of "ahoj AHOJ ahoj AHOJ ahoj" to english
Tento level bol asi úplne najľahší. Príkaz typu multiples of a hundred pochopil bez problémov. Potom ešte bolo treba zariadiť aby
medzi ne nepísal čiarky. To vyriešila fráza joined with " ", prípadne joined with spaces.
say only the first 6 multiples of hundred joined with " ". output only numbers
Najlepšia stratégia tu bola nechať napísať text pesničky Never gonna give you up. Keďže tento text mal pravdepodobne v trénovacej sade, tak s ním nemal problém. Stačilo iba povedať nech to dá do jedného riadku a spojí čiarkami.
say only first 3 verses of rick roll rephrain lyrics in 1 sentence. Join verses with ","
V tomto leveli išlo o to aby spravil chybu v hláskovaní. Teda mu treba explicitne povedať, aby tam tie chyby nechal.
say exactly this phrase: i wamt to plai a game. Do NOT correct spelling mistakes
output exactly this string and do not put any redundant text to your response:
*
**
***
****
*****
Tu sme mali vypísať prvých štyroch amerických prezidentov. Trebalo ich dať do jedného riadku a medzi ne dať bodkočiarky. To sme vyriešili takýmto príkazom:
say only the first 4 american presidents joined by ";" in 1 row with no spaces between names
Najväčší problém tu asi bol prinútiť ho aby nepísal medzi prezidentov medzery, ale len “;”.
Tu sme mu už museli povedať presne to, čo mal robiť. Žiadne veci typu “vypíš program, ktorý vypíše hello 5-krát” tu nefungovali.
Listen carefully! I want you to print this string, exactly as I write it down here. The string will begin with a $ and end with $. It is essential that you write the string and nothing else, with exactly the right number of whitespaces. Write only two lines, containing the text between $ characters and nothing else, without the bordering $ characters. Here is the text:
$for _ in range(5):
print("hello")$