Számítástudományi versenyek (olimpiai játékok) - számítástechnika, programozás

Az informatikai olimpia problémái. 3

A problémák feltüntetése a korlátozások bevezetésének módszerével. 3

A kész alapok felhasználásának korlátozása. 5

Korlátozások a "programozásra". 6

Olimpiai vizsgálatok elvégzése az informatikai teszteken. 8

Az informatikai olimpiai téma tesztelése az idősebb korosztály számára (X-XI évfolyam) 9


Az informatikai olimpia problémái

A különböző szintek hosszú távú informatikai olimpiai játékai során számos negatív szempontot tártak fel, amelyek mind az olimpiai játékok szervezésével, mind pedig az informatika tanításával kapcsolatosak az iskolákban. Íme néhány közülük.

1. Gyakran előfordul, hogy az olimpia egyes résztvevőit "elhanyagolják": az oktatás és a fejlődés spontán, és néha még a számítástechnikai tanfolyam anyagának egy része sem ismeri őket. Ez a spontaneitás bonyolult módszerekként jelenik meg, mint például ELSE NEXT vagy akár ELSE DIM a tipikus problémamegoldási módszerek tudatlanságának hátterében. Egyszerű problémák megoldásakor az ilyen iskolás gyerekek különösen kifinomult és megkérdőjelezhető "trükköket" mutatnak be, de nehezebb feladatnak tűnnek a zsákutcában. Figyelmük nem az algoritmizálásra irányul, mint egyfajta emberi gondolkodás és tevékenység, nem a problémák megfogalmazására és megoldására, hanem a programnyelvre (gyakran - a BASIC hozzáférhető verziójára). De jegyezzük meg intuitív vágyukat a problémák megoldásának más, nem szokványos módjaira.

2. A probléma alanyai kimerülésének folyamatában, a professzionális PC-k és az erőteljes nyelvek terjesztésében hajlamosak arra, hogy nehézkes feladatokat oldjanak meg az olimpiai játékokon. A szövegek is nehézkesek. Az elbírálóknak nincs ideje megvizsgálni a megoldásokat és "vezetni" a teszteket. És bennük, különösen, ha bizonyos esetek nyilvánvalóak, a "ravasz" írhat:

IF N = I majd VÁLASZ: = 1

IF N = 2, akkor VÁLASZ: = 3

(talán kitalálok néhány tesztet)

3. A különböző nyelvi fordítók sebessége, nem beszélve a különböző típusú iskolai VT-ről, jelentősen változik. Ezért a tesztek időbeli korlátozása diszkriminációhoz vezet, például egy résztvevő, aki a Corvette-nél dolgozik, összehasonlítva azokkal, akik hozzáférnek a PEPMM-hez.

4. A nyelvek képességei is nagyon eltérőek. Például a Pascal és a "régi" BASIC eljárások kényelme nem hasonlítható össze - és ismét az esélyegyenlőtlenséget.

Problémamegoldás kényszerítési módszerek segítségével

A diákokkal kapcsolatban az Olimpia célja két: felmutatni mind a képességeket, mind az oktatást. Fogalmazzuk meg pontosabban:

1. Azonosítsa a fejlett képességekkel rendelkező diákokat a logikai-algoritmikus gondolkodásra. Ennek a gondolkodásnak az alulfejlettségét fel lehet álcázni erős, kész szoftverekkel vagy erőteljes nyelvi könyvtárakkal. Tehát a DBASE környezet SORT parancsja lehetővé teszi, hogy egyáltalán ne hozzon létre rendezési algoritmust. Talán ez magyarázza a paradoxonát: az iskolás gyerekek, akik ismerik a Turbo Pascalt, gyakran megoldanak egy kicsit "trükkös" feladatokat, mint azok, akik a Vilnius BASIC-ban dolgoznak. A BASIC elleni küzdelem jó iskolai túlélés.

2. Határozza meg a diákok képzett, fejlett rendszer kombinatorikus gondolkodás, amely megnyilvánulhat a képesség, hogy ne csak a rendeltetésének megfelelő célokra, hanem az eredeti, szokatlan, kreatív különféle kész szoftvert és a csapat, és el tudják kerülni a programozást. Az ilyen gondolkodási és oktatási stílus hiánya, a kilátások maszkolhatók a "meztelen" programozás magas szintű technikájával.

A javasolt koncepció lényege az a feltételezés, hogy lényegében mind a kész PS, mind a programozó mentális aktivitása azonos típusú, és nem függ a VT és a PS teljesítményétől.

Ennek a tevékenységnek az a célja, hogy korlátozott eszközökkel a számítógépes környezetet a kívánt állapotba hozza: véges számú parancsot és végrehajtott algoritmusokat és funkciókat, rendelkezésre álló memóriát és időt. Az új generációk számítógépek és programozási nyelvek csak a régi korlátokat távolítják el, de az ember elkerülhetetlenül újakat is találkozik.

A javasolt fogalom fő elgondolása az, hogy a kreatív képességek korlátait felülkerekedve, de egyén fejlődése is megtörténik. Így az ősember karmai és fogak korlátozott lehetőségei szilícium kések megjelenését eredményezték.

Próbáljuk elmagyarázni értelmében a fogalom példáján sport, ahol minden korlátozás sokáig, és nem valami idegen, és szerves részét képezik a verseny: a magas ugrók ne használja a létráját, súlyemelők - karok, marathoners - kerékpárok. Példaként a probléma a sport által „mesterséges” korlátozásokat elképzelni a következő helyzetet: mielőtt a kerékpározás minden kerékpár eltávolítjuk első kerekeket.

Természetesen a résztvevõ felvehet egy buszra (tiltott eszköz). Folyton gyalog (a számítástechnikában - számítógépek nélkül). De csak azok érdekeltek, akik képesek lesznek:

1) javíttassa a kerékpárt, a hiányzó alkatrészeket a hasznos anyagokból (írási eljárások, amelyek kibővítik a "szűkebb" nyelvi korlátozásokat);

2) egy keréken való utazás, nem feltalálva semmit, és nem építeni (a rendelkezésre álló eszközöket nem konvencionálisan);

3) általában új kerékpárt találni és gyártani (váratlanul a bírák számára). Visszatérve a számítástechnikához, megjegyezzük, hogy a legkényesebb feladat rendkívül nehézkes lehet, ha a feltételt számos korlátozással egészítik ki.

A korlátozások bevezetésekor a rendszerük szintje és teljessége fontos: túlságosan erős korlátozások megoldhatatlanná teszik a problémát; túl gyenge - triviális, kreatív; a korlátozások hiányos rendszere lehetővé teszi, hogy megtalálják a "kiskaput" - "legitim", hogy kihasználják az "illegális" módszert (példánkban - a busz lökhárítására).

A késztermékek használatának korlátozása

Az algoritmizálás képességének jele, hiszünk abban, hogy képesek vagyunk kisebb eszközökkel csinálni, de szabadon ötvözni őket, kiterjesztve az arzenálunkat, lényegében a nyelvben.

Ezért ahelyett, hogy rendszeres megbeszélést folytatna arról, hogy "melyik" nyelvével jobb, olyan korlátozásokat javasolnak, amelyek először kiegyenlítik a résztvevők feltételeit, másrészt pedig maguk a feladatok forrása, beleértve az olimpiai játékokat is. Például bármely végrehajtási nyelven megtilthatja a következőket:

1) GOTO és minden ciklus parancs (FOR, WHILE, REPEAT, egyidejűleg "szenved" és a REPLACE.

2) az összes funkciót és eljárást paraméterekkel, az I / O kivételével;

3) összeszerelő, gépparancsok (az alulról történő átmenet elkerülése érdekében);

4) közvetlen hozzáférés a memóriába (PEEK, MEM, stb.).

Egy tipikus feladat a feladat megteremtése, hogy megtiltson egy műveletet, egy függvényt és ajánlatot bármilyen más eszközzel. Ily módon az intersubjektum-modellezés a könyvkönyv AG Kushnirenko és mások módszertanának stílusában is folyik.

Hozzon létre egy algoritmust az A'B kiszámításához (egyszerűség esetén, B> = 0. A és B egész számok). A fenti korlátozások mellett tilos a "homlokon" történő szaporítás és megosztás.

A "régi" BASIC döntése így lehet

10 'A * B szorzása hurkok és goto nélkül és *

Ez aligha olimpiai feladat, inkább a "mesterséges" korlátozások körülményeihez való programozás stílusának illusztrációja.

Ha nem akadályozza meg a funkciók használatát, megkerülheti a "top" funkciót ebben a stílusban:

B = INT (EXP (LOG (A) + LOG (B) + 0,5))

ami szintén nem rossz, de nem mutatja az algoritmizálási képességet. Ez az ellenkező megközelítés - a kész algoritmusok használata. Egy másik példa a rekurzió tilalmának egyértelmű rekurzív problémája. Formálisan a szubroutines hívások tiltottak, minden más lehetséges, és különösen - néhány GOTO esetében kívánatos.

A "programozás"

Bejelentkezés másik stílus a gondolkodás (úgynevezett felhasználói, szemben a logikai-algoritmikus „programozás”) tekinthető elkerülésére Programming-Bani, a vágy, hogy egy kész eszközt az ő feladata, és ha azok nem felelnek -, hogy megtalálja a nem szabványos, eredeti használata más rendelkezésre álló eszközzel, ami hogy újra megmutassa a kreativitás képességét.

Az ilyen jellegzetességek egyik jellemzője a feladat átalakítása, más típusú adatokra, programokra és parancsokra való áttérés. Például egy egész szám egy numerikus tengely vagy egy sor egy szegmenséhez társítható.

Az ilyen tevékenységekre szükség van:

1) az oktatás, a különböző kész eszközök explicit és implicit lehetőségeinek ismerete mind a "szeretett" nyelven, mind azon kívül;

2) a rendszer-kombinatorikus mentális műveletek kialakulása - az objektumok és a jelenségek látása a feddhetetlenségben, kölcsönös kapcsolatokban; a képesség, hogy konstrukció több kiegészítő szögek egy és ugyanazon tárgy, a képesség, hogy működnek a konceptuális és ágyú segítségével a különböző területekre (például, abból a szempontból, algebra funkció egy mérkőzés, tekintve a geometria - a görbe, abból a szempontból számítástechnika - algoritmus számítás eredménye az adott érv alapján).

Annak érdekében, hogy megmutassuk a résztvevő ezen tulajdonságait, szükséges, mondjuk, megtiltani őt a programozáshoz.

Ez majdnem szemben, hogy a korlátozások az első típus: azonosítani a készségek és tapasztalatok terén algoritmikus művészeti, mi kényszerítette a résztvevők meglehetősen bonyolult algoritmusok, hogy megoldja az „egyszerű” feladatok (ebben a példában - a művelet szorzás). Most pedig az alapok rendelkezésére áll, de - kivéve azokat, amelyek a programozáshoz szükségesek. Most logikus, hogy csak lineáris algoritmusokat oldjon meg. Végül is a "felhasználó" megfelelő tevékenysége a környezet átalakítására szolgáló lépések sorozata. Könnyen keresztül biztosítsa a tilalom a logikai kifejezések: ellenőrzi a feltételek „hasítják” algoritmus hurkok és elágazó. A programozás elkerülése érdekében ismét megtiltjuk a gépi kódokat és az összeszerelőket. Az összes többi - tudsz. Az FOR parancsnak vagy a FOR-nak az NC parancsot is engedélyezni kell; táblázatokba kell beírni (elméletileg és a jövőben N párhuzamos processzorokon egyszerre, mint egy lépésben).

Ideális esetben a probléma megoldását a könyvtárak és szabványfunkciók, eljárások és programok (vagy akár batch fájlként) hívások lineáris sorrendjévé kell tenni.

Meg kell mondani most a táblázatokról. A beépített ciklusokból ki kell kapcsolnia az iterációs ciklust a megadott pontossággal: lehetővé teszi a "szinte mindent".

Egyszerűsített példákat adunk a második típus problémáinak bemutatására. Az első példa a logaritmussal történő szorzás (lásd fent).

Meg kell tudni, hogy a pont a kontúr belsejében van-e, amelyet a hivatkozások koordinátái adnak meg.

Megoldás (iskolák által javasolt).

Kijelzi a kijelölt pont színét a képernyőn.

Rajzolj egy kontúrt a képernyőre (FOR! Cycle).

Töltsön színre.

Ismételje meg az ellenőrzött pont színét.

A képernyőn "vastag" kontúrvonalakkal kapcsolatos vékony kérdésekre nem kerül sor: a példa egy nem szabványos, ravasz és ugyanakkor "naiv" megoldást mutat a probléma közvetlen modellezésén keresztül a képernyőn,

Meg kell találni a maximum két A és B számot. Természetesen a MAX és a MIN funkciók tilosak.

Ha elfelejtette letiltani a MIN funkciót, akkor lehetséges az "oldal megkerülése":

Az ilyen problémák megoldásai nem korlátozódnak az algoritmusok összeállítására, az algoritmusok csak lineárisak, de különböznek a fényes kreatív indítással.

Az Informatikai Olimpiai Játékok tesztelése

Az utóbbi időben egyre inkább felmerült az informatikai olimpia tanításának módszertana. A hagyományos olimpiai játékok rendszerint a programozási készségek tesztelésére irányulnak, és feltételezik, hogy a diákok széles körű ismeretekkel rendelkeznek a matematika és a programozási nyelvek terén, ami a fizika és matematika iskolák számára kiemelt fontosságú. Mi a legtöbb lelkes srác? Hogyan szervezzen egy olimpiai játékot a különböző iskolákban tanulók számára, különböző programokhoz, különböző programozási nyelvek tanulmányozásához (és talán nem tanulmányozásukhoz?), A "heterogén" számítástechnika területén. Ebből a pozícióból találhat kiutat, ha külön programot és informatikai programot tartasz. Egyes iskolákban az ilyen olimpiai játékok tesztek alapján kerülnek megrendezésre.

A tesztek kérdéseit úgy választják ki, hogy lehetővé tegyék a hallgatók előkészítésének általános szintjének ellenőrzését, és lehetőséget adjanak a számítástechnikában felmerülő fő problémák megoldására:

· Számos számítógép az iskolákban;

· A számítógépes oktatás különböző szintje;

· Az algoritmikus nyelvek széles skálája az iskolákban;

· A számítástechnika számának korlátozása az Olimpiai Iskolában, és ezáltal az Olimpiai Játékok résztvevőinek száma.

A tesztelés elve lehetővé teszi, hogy könnyen és gyorsan ellenőrizze a diákok munkáját, és ezért rövid idő alatt meghatározza a nyerteseket.

A javasolt vizsgálatokat VII - IX. És X - XI. A pontszámok kiszámításánál ajánlatos az alapelv: minden helyes válasz "+1" pont, rossz válasz "-1" pont (ha nem tudja a választ, ne próbálja kitalálni), és "0" pontot egy olyan kérdésre, amelyen nincs válasz.

Ebben az esszében az Informatika Olimpiai Vizsgálat feladatának egy változata javasolt az idősebb korosztály számára.


Az informatikai olimpiai téma tesztelése az idősebb korosztály számára (X-XI osztályok)

1. Ugyanaz a jelenség különböző modellekkel rendelkezik?

2. Mekkora a bináris bitek minimális száma az orosz betű és arab számok kis- és nagybetűk kódolásához?

3. Az aktuális könyvtár tartalmazza a LOGIN.BAT, LOGIN.EXE, LOGIN.COM programokat. Milyen programot fog végrehajtani, ha beírja a LOGIN parancssort?

4. A tárolóeszközön elhelyezett rekordok sorrendjét, amelyeket az átvitel és a feldolgozás során összességében figyelembe vesznek, az alábbiak:

5. A hiperszöveg:

1) nagyon nagy szöveg;

2) szerkezeti szöveg, amelyben lehetséges átmenetek végrehajtása "forró" szavakban;

3) a számítógépen gépelt szöveg;

4) szöveg, amelyben a maximális betűméretet használják.

6. A bináris számrendszer előnye, hogy:

1) a bináris kód lehetővé teszi a számítógép memóriájának tárolását;

2) a két állam elektronikus elemei kevesebb energiát fogyasztanak;

3) a két állapotú elektronikus elemek a legegyszerűbbek a tervezésben.

7. Mi lehet algoritmusnak tekinteni?

1) a metró használatára vonatkozó utasítások;

9. Melyik számítógépes eszköz káros hatással lehet az emberi egészségre?

2) a rendszeregység;

Kapcsolódó cikkek