Nemes Tihamér OKSzTV'96
Második forduló
9-10. osztályosok
1996. január 20. 1100-1600
1. feladat:
Bűvös négyzet (18 pont)
A bűvös négyzet egy olyan N*N-es egész tömb, amelyben az elemek összege
soronként, oszloponként és a két átló mentén egyenlő, továbbá egy-egy soron,
illetve oszlopon belül egyanaz a szám kétszer nem szerepel. Készíts programot,
amely bűvös négyzetek ellenőrzésére használható! A BUVOSx.BE állomány első
sora N értékét (<=10), valamint a várt sor-, oszlop- és átlóösszeget,
a következő N sor pedig a tömb soraiban levő számokat tartalmazza, szóközökkel
elválasztva.
Példa:
Az 1. átló az 1. sor 1. oszlopától a 3. sor 3. oszlopáig, a 2. átló
pedig az 1. sor 3. oszlopától a 3. sor 1. oszlopáig tart.
1. sor, 1. oszlop |
1. sor, 2. oszlop |
1. sor, 3. oszlop |
2. sor, 1. oszlop |
2. sor, 2. oszlop |
2. sor, 3. oszlop |
3. sor, 1. oszlop |
3. sor, 2. oszlop |
3. sor, 3. oszlop |
A program írja ki az IGEN szót, ha a bűvös négyzet helyes, illetve
a NEM szót, ha hibás. Az utóbbi esetben ki kell írni a hibás összeget tartalmazó
sorok, oszlopok, illetve átlók sorszámát a hibás összeggel együtt, továbbá
azoknak a soroknak és oszlopoknak a sorszámát, amelyekben van ismétlődő
érték.
2. feladat:
Névnapok (24 pont)
A NEVNAPx.BE állomány (naptár) legfeljebb 365 sorból áll, K-adik sora
az év K-adik napjára eső névnapokat tartalmazza. Ha egy napra csak egyetlen
névnap esik, akkor a sorban egyetlen név van; ha több, akkor a soron belül
az egyes neveket egy-egy szóköz választja el. Ugyanazon a napon 5-nél több
névnap nem lehet.
Készíts programot, amely
A. megadja,
hogy hány név szerepel a naptárban;
B. beolvas
egy nevet a billentyűzetről, s kiírja, hogy az adott név az év hányadik
napján fordul elő a naptárban (ha többször is előfordul, az összeset megadja)!
Példa:
NEVNAP0.BE |
Billentyűzet |
Kimenet |
Nóra
Bálint
Amália
Ádám |
Amália |
4 név, 3. nap |
3. feladat:
Alakzatok (18 pont)
Síkbeli alakzatok egy csoportját a rájuk jellemző adatokkal együtt
adjuk meg:
-
. négyzet (oldalhossz),
-
. kör (sugár),
-
. egyenlő oldalú háromszög (oldalhossz).
Az ALAKx.BE állomány első sorában a feldolgozandó alakzatok a felsorolás
sorrendjében egymásba helyezhetők-e (úgy, hogy az első van legkívül, az
utolsó pedig legbelül)! Ha igen, akkor a program az IGEN szót írja ki a
képernyőre. Ha nem, akkor a NEM szó után azoknak az alakzatoknak a sorszámát
írja ki egy-egy szóközzel elválasztva, amelybe nem fér bele a soron következő
alakzat.
Példa:
ALAKA.BE |
Válasz |
3
1 8 (8 egység oldalhosszú négyzet)
2 4 (4 egység sugarú kör)
1 2 (2 egység oldalú négyzet) |
IGEN |
4. feladat:
Sportverseny (15 pont)
(A feladat "hálón át" is élvezhető megoldása.)
Egy kosárlabdacsapat 5, egy kézilabdacsapat 7, egy labdarúgócsapat pedig
11 tagú. Egy osztály N (>=5) tanulóját úgy szeretnénk csapatokra osztani,
hogy senki se szerepeljen egynél több csapatban, s a lehető legkevesebben
maradjanak ki (például egy 18 fős osztályból 1 labdarúgó- és 1 kézilabdacsapatot
szervezünk, mert így senki nem marad ki, 19 fős osztály esetén azonban
már 2 kézi- és 1 kosárlabdacsapatot kell szervezni.).
Készíts programot, amely billentyűzetről beolvassa egy osztály létszámát,
majd kiírja, hogy belőlük hány kosárlabda-, hány kézilabda- és hány labdarúgócsapatot
szervezzünk, s hányan maradnak ki a csapatokból! Ha több megoldás lenne,
akkor azt kell megadni, amelyikben a csapatok száma maximális (ezek szerint
35 tanulóból 7 kosárlabdacsapatot kell szervezni, nem pedig 5 kézilabdacsapatot).
Elérhető összpontszám: 75 pont+25 pont az 1. fordulóból