Középiskolai Matematikai és Fizikai Lapok
Informatika rovattal
Kiadja a MATFUND Alapítvány
Már regisztráltál?
Új vendég vagy?

A KöMaL 2006. októberi 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ű feladatok

A beküldési határidő 2006. november 15-én LEJÁRT.


I. 139. A széles folyók sodrása partjuktól a középvonalukig számítva négyzetesen növekszik. Szemléltessük egy csónak átkelését egy széles folyón, ha a bent ülők mindig a partra merőlegesen, egyenletesen eveznek. Készítsünk animált GIF állományt, amely bemutatja az átkelés 25 fázisát.

Beküldendő: egy tömörített állomány (i139.zip), amely tartalmazza a kért GIF animációt, a feladat megoldásának vázlatos leírását egy nem formázott szöveges fájlban, valamint a megoldáshoz elkészített forrásállományokat.

(10 pont)

megoldás, statisztika


I. 140. Készítsünk programot, mely a képernyőn lévő betűk leesését szimulálja. A program egy fájlból olvasson be egy kiindulási állapotot, és ezt írja ki a szöveges képernyőre. Ezután minden tizedmásodpercben válasszon ki véletlenszerűen egy karaktert, és azt helyezze a képernyőn egy sorral lejjebb, az eredeti helyén egy szóközt hagyva. Olyan karakter, mely alatt közvetlenül van egy nem szóköz karakter, vagy a képernyő alja, nem tud lejjebb esni.

A bemeneti fájl neve i140.txt. A fájlban 25 sor található, minden sor 80 karakter hosszú, és csak betűket, szóközt vagy számokat tartalmaz. A szimuláció végén (amikor már egyetlen karakter sem tud lejjebb esni) a bal felső sarokban írja ki, hogy ,,Minden leesett!'' majd az Enter gomb megnyomásáig várjon.

Beküldendő a program forráskódja (i140.pas, i140.cpp, ...)

(10 pont)

megoldás, statisztika


I. 141. Nem könnyű eligazodni a mobil telefonszolgáltatók szolgáltatás díjai között. Készítsünk Excel táblázatot, amely segít ebben. Az első munkalapon legyen lehetőség paraméterek megadására:

A hívási szokásainkról megadhatjuk:

-melyik időszakban (hány órától, hány óráig) szoktunk legtöbbet telefonálni,

-a hívások körülbelül hány százaléka esik ebbe az intervallumba,

-a hívásaink körülbelül hány százaléka zajlik az adott szolgáltató hálózatán belül,

-beszélgetéseink jellemző hossza: legalább és legfeljebb hány másodpercet szoktunk beszélni.

Három tarifa legyen összehasonlítva, minden esetben az alábbi paraméterek szerepeljenek:

-számlázás alapja: ide perc, fél perc vagy másodperc legyen megadható,

-csúcsidő kezdete és vége (hány órától, hány óráig),

-egységnyi hívás díja hálózaton belül, csúcsidőben és azon kívül,

-egységnyi hívás díja hálózaton kívülre, csúcsidőben és azon kívül.

A számítások elvégzéséhez egy másik munkalapot használjunk. Itt véletlenszerűen generáljunk 1000 hívásadatot, az első munkalapon megadott paraméterek alapján.

Számítsuk ki a hívások összes díját a három tarifacsomag alapján, és az első munkalapon jelezzük a felhasználónak, melyik tarifa a legkedvezőbb az adott paraméterek alapján.

Példa a tarifákra: fél perc alapú számlázás, csúcsidő 10 órától 16 óráig, ekkor hálózaton belül 20 Ft, azon kívül 30 Ft a fél perc díja. Ezen időponton kívül 11 Ft hálózaton belül, 19 Ft hálózaton kívül.

Példa a hívási szokásokra: 11 óra és 18 óra között beszélünk a legtöbbet, a hívásaink 80%-a ekkor zajlik. A hívások hossza 18 másodperc és 175 másodperc között szokott lenni, és a hívások 45%-a zajlik hálózaton belül.

A helyes számításokon kívül értékeljük a felhasználóbarát kialakítást is: az adatok logikus és áttekinthető megadását, a cellák formázását és védelmét.

Beküldendő az Excel táblázat tetszőlegesen feltöltött paraméterekkel.

(10 pont)

megoldás, statisztika


S-jelű feladatok

A beküldési határidő 2006. november 15-én LEJÁRT.


S. 20. Adott a síkon n darab pont. Keressük meg azt a legkisebb kört, amely lefedi az összes pontot. A feladatot megoldó program bemenő adatait egy szöveges állományból vegye, amely soronként egy-egy pont X és Y koordinátáját tartalmazza szóközzel elválasztva. A koordináták valós számok, melyek tizedes pontot tartalmazhatnak. A bemenő állományban nincs üres sor, annyi pont koordináta-párját tárolja, ahány sora van.

Az input állomány nevét a parancssorban adjuk meg, például az alábbi módon:

s20.exe adatok.txt.

A program kimenete a standard kimenetre kerül, egy sorban megadja a keresett kör középpontjának X és Y koordinátáját, valamint a kör sugarát. A programokat különböző méretű, legföljebb 10 000 pontot tartalmazó bemeneti állományokkal teszteljük és értékeljük. A pontozásnál az adatok feldolgozásának sebességét is vizsgáljuk, a maximális pontszám eléréséhez a feldolgozásnak néhány perc alatt véget kell érnie. Például az adatok.txt tartalma:

20 10
22.3 8.0
20 2.0

esetén a kimenet:

20.0 6.0 4.0

Beküldendő a program forráskódja (s20.pas, s20.cpp, ...) és rövid dokumentációja (s20.txt, s20.pdf, ...). A dokumentáció nélküli programok legföljebb 7 pontot érnek.

(10 pont)

megoldás, statisztika


Figyelem!

Az informatika feladatok megoldásait ne e-mailben küldd be! A megoldásokat az Elektronikus munkafüzetben töltheted fel.