A számítástechnika-versenyben
kitűzött feladatok |
Kérjük, olvassa el a versenykiírást.
Az I pontversenyben kitűzött gyakorlatok
I. 82. Készítsünk programot (i82.pas,...), amely az r(>0) értékének megadása után kirajzolja az r sugarú alapkört, majd
a) az a, b, c valós számok megadására kirajzolja az y = ax2 +bx+c parabola,
b) az a, b valós számok megadására kirajzolja az y=ax+b egyenes inverz képét, egy ábrára több alakzatét is.
Az origó középpontú, r sugarú körre vonatkozó inverzió a sík (origótól különböző) (x;y) pontjához az
\(\displaystyle \left(\frac{x\cdot r^2}{x^2+y^2};\frac{y\cdot r^2}{x^2+y^2}\right) \)
pontot rendeli.
(10 pont)
I. 83. A H halmaz az összes \(\displaystyle x+y\sqrt5\) alakú számot tartalmazza, ahol x és y tetszőleges egész számot jelöl. A H halmaz tetszőleges két elemének összege, különbsége, szorzata és pozitív egész kitevős hatványa H-beli számot eredményez. Két elem hányadosa már kivezet a H halmazból, de a nevező gyöktelenítésével belátható, hogy elég azt a bővebb B halmazt tekinteni, amely úgy keletkezik, hogy a H minden egyes elemét elosztjuk minden pozitív egész számmal.
Készítsünk programot (i83.pas,...), amely a B elemeivel el tudja végezni a négy alapműveletet és a pozitív egész kitevős hatványozást, láncszámolás-szerűen is. Előírható, hogy a \(\displaystyle \sqrt5\) helyett egy más célra nem használt karaktert, pl. a @ jelet lehessen megadni inputként.
Például egy lehetséges input: a=5-3@; b= 4+7@; c=a/12; d=b/43; e=d^7; f=c+e; g=f/b.
(10 pont)
I. 84. Ábrázoljuk az xn=min (xn-1,xn-2)-xn-3 (n>3), ill. az xn= max (xn-1,xn-2)-xn-3 (n>3) előírásnak megfelelő számsorozatokat a táblázatkezelő első ill. harmadik oszlopában! Az első oszlopban az első három helyre kezdőértékekként tetszőleges egész számot beírva, ezek a számok automatikusan jelenjenek meg a harmadik oszlop első három helyén is, továbbá a második, ill. negyedik oszlopban jelenjen meg egy figyelmeztetés (,,Ism.'') abban a sorban, ahonnan kezdve az első, ill. második sorozat elemei ismétlődnek.
Az ötödik oszlop első két cellájában jelenítsük meg a ciklushosszakat.
Beküldendő a táblázat (i84.xls).
(10 pont)
Az I-jelű feladatok megoldásai a következő címre küldendők:
i@komal.hu
Javasoljuk olvasóinknak, hogy az interneten keressék meg az Euklides nevű (magyar nyelven is értő) programot, ismerkedjenek meg használatával - a közeljövőben ezen alapuló feladatot is tervezünk.
Az S pontversenyben kitűzött feladat
S. 1. Írjunk programot, amely tizedestörteket közönséges törtekké alakít. A program olvassa be a tizedestörteket; minden egyes sor legfeljebb tizennégy számjegyet és egy tizedespontot tartalmaz. (A bemenő adatok mindig helyesek lesznek, az ellenőrzéstől eltekinthetünk.) Minden egyes sorhoz keresse meg a lehető legkisebb nemnegatív a és pozitív b számokat, amelyekre az \(\displaystyle \frac{a}{b}\) szám tizedestört alakjának eleje (kerekítés nélkül) megegyezik a megadott sorozattal és írja ki az \(\displaystyle \frac{a}{b}\) törtet.
Példa: | |
Input | Output |
0 1.01 1.010 1.0100 3.14 3.1415926535897 |
0/1 52/51 92/91 101/100 22/7 20530996/6535219 |
A programokat különböző méretű - legfeljebb hat-, tíz, illetve tizennégy számjegyből álló - adatokon fogjuk tesztelni. A maximális pontszám eléréséhez a programnak a legnagyobb adatokon is gyorsan (legfeljebb néhány perc alatt) le kell futnia. Akinek a programja csak a hat- vagy tízjegyű adatokra fut le adott idő alatt, az 6, illetve 8 pontot kaphat.
(10 pont)
Az S-jelű feladatok megoldásai a következő címre küldendők:
s@komal.hu