http://vitas.matfyz.cz/cv/contest/priklady.html
Zadání: Vytiskne 'Hello world'
Input: Žádný vstup.
Output: Vytiskne 'Hello world'.
Soubory: hello.pas, hello.out.
Zadání: Vyberte největší přirozené číslo ze tří.
Input: Jedno zadání na řádku, zadání má tvar:
Z: a b ckde Z je číslo zadání a,b,c jsou zkoumaná čísla.
Output: Pro každé zadání vytiskne řádek ve tvaru:
Z: max
Soubory: max3.pas, max3.out, max3.in.
Zadání: Načtěte deset čísel a vytiskněte je v opačném pořadí.
Input: Jedno zadání na řádku, zadání má tvar:
Z: [10 prirozených cisel]kde Z je číslo zadání, poslední zadání má číslo 0.
Output:
Z: [10 čísel v opačněm pořadí, oddělené mezerou]
Poznámka: za posledním není mezera
Soubory: rev10.pas, rev10.out, rev10.in.
Zadání: V posloupnosti nenulových celých čísel najděte maximální. Posloupnost je ukončena číslem 0 (které se nepočítá). Pokud takové číslo neexistuje vytiskne se 0.
Input: Jedno zadání na řádku. Zadání má tvar:
N: [čísla oddělená mezerou] 0
Output:
N: max
Soubory: max.pas, max.out, max.in.
Zadání: Najděte třetí největší číslo v posloupnosti (celých nenulových). Jinými slovy: kdyby byla tato čísla usporádána sestupně, které by bylo třetí. Např: v 1 2 2 3, je treti nevjvetsi cislo 2. V případě, že takové číslo neexistuje, program vytiskne text 'trymax neexistuje'.
Input: Jedno zadání na řádku. Zadání má tvar:
Z: [neulová celá čísla oddělená mezerou] 0Poslední zadání má číslo 0.
Output:
Z: [trymax]
Z: trymax neexistuje
Soubory: trymax.pas, trymax.out, trymax.in.
Zadání: Setřiďte sestupně 3 čísla podle velikosti
Input: Jedno zadání na řádku, zadání má tvar:
Z: a b ckde Z je číslo zádaní, a,b,c jsou zkoumaná čísla. poslední zadání má číslo 0.
Output: Pro každě zadání vytiskne řádek ve tvaru:
Z: max medium min
Soubory: sort3.pas, sort3.out, sort3.in.
Zadání: Najde číslo, které je v posloupnosti na místě za minimem. Např: 1 2 100 5 6 0 --> 2. Pokud takové číslo neexituje, vytiskne 0.
Input: jedno zadaní na řádku, zadání má tvar:
Z: [cela nenulova čísla oddělena mezerou] 0
Output:
Z: postmin
Soubory: postmin.pas, postmin.out, postmin.in.
Zadání: Najde číslo, ktere je v posloupnosti pred minimem. Např: 5 2 100 5 6 0 --> 5. Pokud takové číslo neexituje vytiskne 0.
Input: Jedno zadaní na řádku. Zadání má tvar:
Z: [celá nenulová čísla oddělena mezerou] 0Poslední zadání má číslo 0.
Output:
Z: premin
Soubory: premin.pas, premin.out, premin.in.
Zadání: Na vstupu je rodné číslo ve tvraru YY MM DD OOOO (YY rok, MM měsíc, DD den, OOOO ocásek). Úkolem je zjistit, je-li toto číslo korektní. Tedy jestli datum tímto rodným číslem vyjádřené existuje a jestli je celé číslo dělitelné jedenácti. Předpokládejte, že dvojčíslí 00 znamená rok 2000. U ostaních roků na tom nezáleží. Program odpoví textem 'ok' nebo 'ko'.
Input: jedno zadání na řádku, zadání má tvar:
Z: YY MM DD OOOOkde Z je číslo zadání. Poslední zadání má číslo 0.
Output:
Z: ok
Z: ko
Soubory: rc.pas, rc.out, rc.in.
Zadání: Na vstupu jsou dva řetězce A, B, najděte pozici prvního výskytu řetězce A v řetězci B, pokud se A v B nevyskytuje, výstup bude 0. Nepoužívejte pascalskou fci pos();
Input: jedno zadaní na dvou řádcích řádku, zadání má tvar:
Z:<řetězec A>
Z:<řetězec B>kde Z je číslo zadání. Poslední zádání má číslo 0.
Output:
Z:[pozice]
Soubory: pos.pas, pos.out, pos.in.
Zadání: K zadaně permutaci nalezněte následující v lexikografickěm uspořádání, např. pro P=5: 1 2 4 5 3 --> 1 2 5 3 4 . Pozn: následník k poslední permutaci je první permutace. level 3
Input: Rádek vstupu vypadá následovně:
Z: N a1 a2 ... aNkde Z číslo zadání, N je velikost permutace a a1 .. aN je samotná permutace. Můžete přepokládat: N <= 100 poslední zadání má číslo 0.
Output:
Z: lexikograficky následující permutace oddělená mezerami
Soubory: nxtperm.pas, nxtperm.in, nxtperm.out.
Zadání: Uvažujme permutace nad čísly 1..N uspořádané lexikograficky. Pro danou permutaci nalezněte, kolikáté v pořadí je v tomto uspořádání. Permutace 1234..N má číslo 1.
Input: Řádek vstupu vypadá následovně:
Z: N a1 a2 ... aNkde Z číslo zadání, N je velikost permutace permutace a a1 .. aN je samotná permutace. Můžete přepokládat, že N! se vejde do datoveho typu longint. (tj. N<=12) poslední zadání má číslo 0.
Output:
Z: [cislo permutace]
Soubory: permnum.pas, permnum.out, permnum.in.
Zadání: Fibonacciho čísla jsou zadány rekurentně: F(0) = 0, F(1) = 1, F(n+2) = F(n+1) + F(n).
Input: Jedno zadání na řádku, zadání má tvar:
Z: Nkde Z je číslo zadání, N požadované číslo. poslední zadání má číslo 0.
Output:
Z: F(N)
Soubory: fib.pas, fib.out, fib.in.
Zadání: Vypište zadané (nezáporné celé) číslo slovy (bez diakritiky). Přesný tvar bude jasný z příkladů: 1(jedna), 2(dva), 247(dve ste ctyricet sedm), 1008(tisic osm), 133(sto tricet tri), 52(padesat dva). Zadané číslo bude menší než dest tisíc. level 2
Input: jedno zadaní na řádku, zadání má tvar:
Z: Nkde Z je číslo zadání, N je číslo k přečtení poslední zadání má číslo 0.
Output:
Z: [zadané číslo slovy]
Soubory: slozenky.pas, slozenky.out, slozenky.in.
Zadání: Převeďte arabské číslo na číslo římské. Použijte tzv. moderní zápis římských čísel, který nedovoluje nejednoznačnosti. Viz nasledující přiklady: 1 -> i, 4 -> iv, 8 -> viii, 10 -> x, 50 -> l, 100 -> c, 500 -> l, 1000 -> m, 49 -> xlix, 1999 -> mcmxcix.
Input: jedno zadaní na řádku, zadání má tvar:
Z: Nkde Z je číslo zadání, N je arabské číslo, přirozené menší než 4000. Pokud je N nula program vytiskne '-'. poslední zadání má číslo 0.
Output:
Z: rim(N)
Soubory: ara2rim.pas, ara2rim.out, ara2rim.in.
Zadání: Naprogramujte kalkulačkuk, která vyhodnotí operatory +-*/ a závorky. Příklad: (1-4*6+1)*(-1) --> -25. V případě, že výraz je špatně zadán, napíše se: syntax error V případě, že se vývarazu dělí nulou, napíše se: div by zero Pro vyhodnocení výrazu použijte datový typ Longint. Můžete předpokládat, že výraz nebude delší než 200 znaků.
Input: jedno zadaní na řádku, zadání má tvar:
Z : výrazkde Z je číslo zadání, N výraz obsahující znaky '0-9+-*/()' poslední zadání má číslo 0.
Output:
Z: výsledekZ: syntax error Z: div by zero
Soubory: kal.pas(not yet), kal.out(not yet), kal.in(not yet).
Zadání: Naprogramujte celočíselnou kalkulačku, která vyhodnotí operatory +-*/. Příklad: 1-4*6/5+1*-1 --> -4. V případě, že výraz je špatně zadán, napíše se: syntax error V případě, že se vývarazu dělí nulou, napíše se: div by zero Můžete předpokládat, že výraz nebude delší než 200 znaků. Pro vyhodnocení výrazu použijte datový typ Longint.
Input: jedno zadaní na řádku, zadání má tvar:
Z : výrazkde Z je číslo zadání, N výraz obsahující znaky '0-9+-*/' poslední zadání má číslo 0.
Output:
Z: výsledekZ: syntax error Z: div by zero
Soubory: kal.pas(not yet), kal.out(not yet), kal.in(not yet).
http://vitas.matfyz.cz/cv/contest/priklady.html