A KöMaL 2003. márciusi informatika feladatai
Kérjük, ha még nem tetted meg, olvasd el a versenykiírást.
Feladat típusok elrejtése/megmutatása:
![]() |
I-jelű feladatokA beküldési határidő 2003. április 15-én LEJÁRT. |
I. 46. Adott az \(\displaystyle 1\dots N\) elemeket tartalmazó \(\displaystyle N\) elemű \(\displaystyle H\) halmaz (\(\displaystyle 1 \le N \le 1000\)). Legyen \(\displaystyle A\) és \(\displaystyle B\) a \(\displaystyle H\) halmaz pontosan \(\displaystyle K\) elemű részhalmaza (\(\displaystyle 1 \le K \le N-1\)). Azt mondjuk, hogy az \(\displaystyle A\) halmaz kisebb, mint a \(\displaystyle B\) halmaz, ha \(\displaystyle A\setminus B\) legnagyobb eleme kisebb, mint \(\displaystyle B\setminus A\) legnagyobb eleme. Írjunk programot (i46.pas, ...), amely beolvassa \(\displaystyle N\), \(\displaystyle K\) és \(\displaystyle L\) értékét, majd megadja a \(\displaystyle H\) halmaz nagyság szerint csökkenő sorrendben \(\displaystyle L\)-edik \(\displaystyle K\) elemű részhalmazát.
Példa: \(\displaystyle N=5\), \(\displaystyle K=2\) esetén:
\(\displaystyle {ll} L=1 &~\Rightarrow \text{ részhalmaz: }\{5,4\} \\L=2 &~\Rightarrow \text{ részhalmaz: }\{5,3\} \\L=5 &~\Rightarrow \text{ részhalmaz: }\{4,3\} \\L=10 &~\Rightarrow \text{ részhalmaz: }\{2,1\} \)
\(\displaystyle
(10 pont)
I. 47. Készítsünk programot (i47.pas, ...), amely kirajzol a képernyőre egy kört, a körvonalon elhelyezi egy szabályos \(\displaystyle N\)-szög pontjait (egyet a kör képernyőn legfelső pontjába), majd a legfelsőt összeköti a tőle óramutató járásával ellentétes irányban lévő \(\displaystyle K\)-adikkal, azt a \(\displaystyle 2K\)-adikkal és így tovább, amíg vissza nem jut a kiinduló pontba. Ezután a kapott ábrát kiszínezi úgy, hogy az ,,azonos jellegű'' zárt területei azonos színűek, a ,,különböző jellegűek'' pedig különböző színűek legyenek. Feltételek: \(\displaystyle 3 \le N\le 50\), \(\displaystyle 1 \le K\le N/2\).
Több példát láthatunk a hátsó külső borítón.

(10 pont)
I. 48. Egy osztályba \(\displaystyle N\) tanuló jár. Szeretnénk az osztályt \(\displaystyle K\) (nem üres) csoportra osztani, de nem tudjuk, hogy ezt hányféleképpen lehet megtenni.
Készítsünk táblázatot (i48.xls), amelybe \(\displaystyle N\) értékét beírva (\(\displaystyle 1\le N \le 20\)) ezt megkapjuk, azaz az ábrán bekeretezett rész \(\displaystyle I\). sor \(\displaystyle K\). oszlopában kiszámolja, hogy hányféleképpen lehet egy \(\displaystyle I\) tagú osztályt \(\displaystyle K\) darab nem üres részre osztani. A táblázatban csak azokon a pozíciókon látszódjanak értékek, ami értelmes a feladat szerint!
\setlength\doublerulesep0pt
\(\displaystyle {|@{\qquad}r@{}!{\vrule width 1pt}l@{\qquad}r@{}l@{\qquad}r@{\qquad}r@{\qquad}r@{\qquad}r@{}!{\vrule width 1pt}} \cline{1-3} \multicolumn{1}{|@{}l@{}}{\,}N={}\)
\multicolumn1r@|@5\,\multicolumn1l
\hline\cline2-8 1\,1\,\,
\cline1-1 2\,1\,1\,
\cline1-1 3\,1\,31\,
\cline1-1 4\,1\,761\,
\cline1-1 5\,1\,1525101\,
\hline\cline2-8
\(\displaystyle
(10 pont)
Figyelem!
Az informatika feladatok megoldásait ne e-mailben küldd be! A megoldásokat az Elektronikus munkafüzetben töltheted fel.
