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

Fórum: Informatika kömal

  [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]    [11]    [12]    [13]    [14]  

Szeretnél hozzászólni? Jelentkezz be.
[96] VePe5222009-05-14 21:57:25

I.213. feladatnál ha a megfejtéshez nem készítek saját programot megkapható helyes végeredmény és részletes dokumentáció esetén a maximális pontszám?

[95] Engedy Balázs2009-05-09 22:21:29

1.) Igen, mindig teljesíthető a táv.

2.) Teljesen jogos kérdés, köszönjük az észrevételt. Az alapvető koncepció az, hogy a villamos pályagörbéjének egyetlen közös pontja sem lehet a "piros" intervallumokkal, azaz nem lehet egy vonalban lámpával egy olyan időpillanatban, amikor az piros. Ebből nyilván az is következik, hogy nem parkolhat rá piros (vagy pirosra váltó) lámpára.

Előzmény: [94] moneo, 2009-05-09 19:29:19
[94] moneo2009-05-09 19:29:19

Még egy kérdés: ha a villamos megállt egy lámpánál, és akkor érkezett, amikor még zöld volt a lámpa (tehát vehetjük úgy, hogy a villamos eleje egy kicsit túllógott a lámpán), akkor elindulhat-e akkor is, ha piros a lámpa? Ez a feladat szövegébe még belefér, de a pédában nem így van. Ugyanez másik megközelítésben: piros a lámpa, megállhat ugyanazon a ponton egy villamos? Úgy is megfogalmazhatjuk, hogy a lámpa egy adott pont "elején" vagy "végén" van?

[93] moneo2009-05-09 17:43:11

S. 44-ben mindig teljesíthető a versenytáv, vagy egy lámpa megakadályozhatja? Ha pedig nem, akkor mit írjon ki a program?

[92] Engedy Balázs2009-03-30 13:00:35

Szia! Folyamatban van, a napokban az is ki fog kerülni.

Előzmény: [91] besz14, 2009-03-30 07:28:10
[91] besz142009-03-30 07:28:10

Úgy vettem észre, hogy az egyes feladatok kijavítása a beküldés utáni 2-3. hétben megtörténik. Ezzel kapcsolatban kérdezném azt, hogy az S.39 feladat kijavítsása miért késik ilyen sokat.

[90] Engedy Balázs2009-03-18 13:19:25

Bár nem én tűztem ki a feladatot, de szerintem 3x3-as (sőt 2x2-es) szoba nem fordulhat elő a bemenetben: "Egy téglalap alaprajzú labirintus folyosói és falai egységnyi vastagságúak.". Ezt legalábbis én úgy értelmezem, hogy két (azonos irányú) egy-széles folyosó közt biztos lesz egy fal. ('Villám' alakú folyosó viszont elképzelhető...)

Ezt elfogadva már világos, hogy a fény csak négy irányba terjed ("...az elhelyezési ponthoz csatlakozó (egyenes) folyosószakaszokat azok teljes hosszában megvilágítják.").

A futásidővel kapcsolatban nem véletlenül nem adunk meg konkrét értéket. Az S pontverseny szelleméhez szorosan hozzátartozik, hogy egyrészt ne csak egy valamilyen megoldást adjatok, hanem gondolkozzatok a feladaton, optimalizálási lehetőségeket keressetek, jobbnál jobb megoldásokat gondoljatok át, és vegül a legjobb megoldást küldjétek be. Másrészt pedig az is, hogy teret nyissunk a kreativitásnak, az ötletes, kimagasló megoldásokat megfelően elismerjük. Ehhez azonban szükséges, hogy a konkrét pontozást adaptívan, a beérkezett megoldások függvényében alakíthassuk ki.

De hogy a kérdésedre is válaszoljak, feladattól nagyban függően, de S pontversenyben általában néhány másodperc alatt lefutó, hibátlan megoldás ér 10 pontot, néhány percig futó 9-et, az ennél is több, fél órákig futó pedig 8 pontot.

Előzmény: [89] RRichi, 2009-03-17 20:33:39
[89] RRichi2009-03-17 20:33:39

Nem is ez a fő kérdés, hanem az, hogy a lámpafény csak balra jobbra fel és le terjed, vagy esetleg ha egy 3*3-as négyzet közepébe rakunk egy lámpát, a négyzet mind a 9 mezőjét bevilágítja e?

Előzmény: [88] Ágoston, 2009-03-17 17:35:57
[88] Ágoston2009-03-17 17:35:57

A mostani S.43. feladatban mennyi idő alatt kell lefutnia a programnak, hogy maximális pontszámot lehessen rá kapni? Köszönöm Weisz Ágoston

[87] Janosov Milán2009-03-17 16:22:11

Köszönöm.

Előzmény: [86] Fodor Zsolt, 2009-03-17 13:29:25
[86] Fodor Zsolt2009-03-17 13:29:25

Megoldható segédcellák nélkül is, de ha úgy egyszerűbb, az F oszloptól jobbra lehet.

Előzmény: [85] Janosov Milán, 2009-03-16 19:45:11
[85] Janosov Milán2009-03-16 19:45:11

Üdv!

A márciusi számban, az i209es feladatban nem szól a feladat szövege esetleges mellékszámításokról. Ez azt jelenti, hogy szabad használni, vagy azt, hogy nem?

[84] Engedy Balázs2009-03-11 20:12:57

Igen, ez így még jobb, főleg tesztelés során, mert így, ha fájlban tárolod az alakzatokat, majd a fájlt a '<' operátorral a bemenetre irányítod, akkor magától ki fog lépni a végén.

Köszi a felvetést!

Előzmény: [83] Fálesz Mihály, 2009-03-11 14:24:57
[83] Fálesz Mihály2009-03-11 14:24:57

Olvashatsz a fájl végéig. Akkor is, ha az stdin-ről van szó.

while (!feof(stdin)) { .... }

Előzmény: [82] Engedy Balázs, 2009-03-11 12:32:37
[82] Engedy Balázs2009-03-11 12:32:37

Szia! Igen, teljesen jó, ha végtelen ciklusban olvasol be. A legtöbb környezetben fejlesztés során Ctrl+C-vel így is meg tudod szakítani a futást, a javítás meg úgyis "drasztikusabb" módszerekkel történik.

Természetesen - szükség esetén - nyugodtan értelmezhet a programod az előírtnál több utasítást is, amíg ez nem interferál az elvárt működéssel -- gondolok itt pl. teszteléshez az aktuális játékállás kiírására.

[81] Para Attila2009-03-11 10:05:25

Az S42 feladattal kapcsolatban lenne egy kérdésem. A feladatból nem drül ki, hogy a program milyen utasításra kell megálljon. Megfelelő-e az, ha a beolvasó ciklust nem állítom meg, hanem hagyom a végtelenbe futni? Esetleg van-e olyan bemeneti parancs, amelyre meg kell álljon?

[80] Jwurt2009-03-06 09:09:03

Köszi Balázs, így már minden világos!

Előzmény: [79] Engedy Balázs, 2009-03-05 23:08:36
[79] Engedy Balázs2009-03-05 23:08:36

Sziasztok!

A standard be- és kimenet nem más, mint 2 kommunikációs csatorna (csővezeték) elnevezése, melyek rengeteg környezetben a program indulásakor automatikusan létrejönnek. Létezésük értelme, hogy a program alapszinten minden további nélkül tudjon kommunikálni a külvilággal (felhasználóval), ne kelljen ehhez a programozónak esetlegesen OS-specifikus kódot külön írni. Például: Pascal-ban a külön fáljparaméter nélküli readln, ill. writeln hívás (uses CRT nélkül!) a megfelelő standard csatornából olvas, ill. ír, hasonlóan C-ben a printf() és scanf().

Ha a parancssorbol indítjuk az alkalmazást (mint szokásos), akkor sincs ez másként, a readln és writeln ugyanúgy a standard csatornákkal dolgozik, csak a standard bemenet csatorna írható vége rácsatlakozik a "billentyűzet", a stdout olvasható végére pedig a "képernyő".

Ezen csatornák további remek tulajdonsága, hogy természetesen nem csak a billentyűzetet/monitort lehet rájuk csatlakoztatni, hanem például egy másik programot is. Mint vélhetőleg rögtön kitalátátok, pontosan ez fog történni javítás során, ezért fontos, hogy a standard csatornákat haszáljátuk... és ne pedig a billentyűzetet, amely esetén automatizálnunk, meg kell hagyni, jóval nehezebb lenne.

Nektek mindössze annyi dolgotok van, hogy a programot (Pascal-ban) a CRT unit, ill. (C-ben) a conio.h használta nélkül készítitek el. A javításkori helyes működésről azzal tudtok előre megbizonyosodni, hogy létrehoztok mondjuk egy s42_be.txt fájlt, lefordítjátok a programot pl. s42(.exe)-vé, majd a következő paranccsal úgy indítjátok el, hogy a program sztandard be- és kimenetére most ne a billentyűzet és képernyő csatlakozzon, hanem a megadott fájlok:

s42 < s42_be.txt > s42_ki.txt

Ha ezzel a jó eredmény a kimeneti fájlba kerül, akkor a programotok a javítás során is jól fog működni.

[78] Jwurt2009-03-05 18:48:29

Az S42. feladatban ez szerepel: "Figyeljünk arra, hogy valóban a standard be- és kimenetet használjuk, ne a billentyűzetet és/vagy a képernyőt."

A Paxcal-ban a standard bemenet a billenytyűzet, a standard kimenet a képernyő. Nem ellentmondás ez? Pascal-osok! Van olyan, akinek van ötlete, hogy lehet ezt a feladatot megoldani? (Nem az ötlet érdekel, csak az, hogy megoldható-e a feladat!)

[77] Engedy Balázs2009-02-25 13:30:10

Szia! Nem tűnik el, ezért is "végtelen" magasságú a játéktér. A cél tehát csupán az, hogy minél tömörebben pakoljuk az elemeket.

Előzmény: [76] moneo, 2009-02-25 12:14:33
[76] moneo2009-02-25 12:14:33

S. 42.-ben, ha egy sor betelik, akkor az eltűnik, mint az eredeti játékban, vagy nem?

[75] Horváth Loránd2009-02-17 00:25:38

Üdvözlet minden kedves Jelenlévőnek!

Sajnos lekéstem az elektronikus munkafüzetbe való feladatok feltöltésével.

Pontosabban épp feltöltés közben voltam, amikor lezárt a rendszer, pedig még volt 10 perc éjfélig. Így 2 fájlt nem tudtam feltölteni...

A kérdésem az lenne, hogy az elküldött feladatok (azonnal postáztam Schmieder László Tanár Úrnak 0:07-kor) beszámíthatóak-e a januári pontversenybe, vagy sem?

Üdvözlettel: Horváth Loránd - egy elkeseredett versenyző

[74] Schmieder László2009-02-06 10:33:06

Az S.41. feladatnál Siegler Gábor - a bizottság tagja és a feladat kitűzője - a [68] számú hozzászólásában engedélyezte a feladat Logo-ban történő megoldását.

Az én előző gondolataim irányelvek akartak lenni arra vonatkozóan, hogy alapvetően általános célú nyelveken szeretnénk megoldásokat kapni - ez a feladat tehát most kivétel.

A verseny közben történt módosításért elnézést kérünk, a jövőben a versenybizottság nagyobb körültekintéssel és a versenykiírásban időben meghatározza - amennyire lehetséges - a verseny "nyelvi paramétereit".

Ha mégis vannak kivételek, Pl. az említett feladatnál, úgy az a feladat kiírásában fog szerepelni, hogy "ez a feladat X vag Y nyelven/környezetben is megoldható".

[73] Seregi Benjamin2009-02-05 21:43:18

Üdvözlet minden Fórumozónak!

Nagyon örülök, hogy kiterjesztették a programozási nyelvek palettáját, de valóban közölhették volna ezt hamarabb is, mert így már bizonyos szempontból nem igazságos a verseny. Valamint azt sem ártana tisztázni ennél a rejtélyes S feladatnál, hogy végül elfogadják-e a Logo nyelvet, mert bár olvastam a Tanár Úr hozzászólását, ahol kifejtette, hogy engedélyezik az általános célú, procedurális nyelveket, nem értettem igazán, mert a Logo nem procedurális, hanem funkcionális és még csak nem is általános célú.

[72] Schmieder László2009-02-05 16:35:40

Az előző és az ide tanévben egyre többször fordult elő, hogy diákok I és S feladatok megoldását C#-ban, illetve S feladatok megoldását Visual Basicban küldték be.

Ezeket a megoldásokat elfogadtuk, javítottuk és a többiekkel azonos mértékben pontoztuk. Ezzel azt akartuk elérni, hogy ne legyen senki eleve kizárva a versenyből, aki a saját, kedvenc nyelvén és környezetében tudja (csak) a programot megírni.

Vagyis a verseny szervezői eltértek a versenykiírástól néhány diák esetében, és így valóban hátrányosabb helyzetbe hoz(hat)tak olyan versenyzőket, akik a szabályokat betartották, és pl. C++-ban írták a megoldást, pedig C#-ban ezt szívesebben megtették volna.

Azt gondoljuk, ezek után úgy járunk el helyesen, ha az év hátralévő részében minden diáktól elfogadjuk az "általános célú, procedurális programozási nyelveken" megírt programokat az I és az S versenyben egyaránt.

Az S.41. feladat szintén ellenkezik az S versennyel, mert a kiírás mellett szereplő kép is egy nem konzolos alkalmazást mutat, mint minta. Tehát elfogadjuk megoldásként a grafikus felületen működő programokat (sőt, itt szerencsésebb abban dolgozni). Természetesen a BGI grafika is jó (a BGI állományt nem kell mellékelni).

A jövő év versenykiírását mindenképp pontosítjuk a fent leírtak szellemében.

  [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]    [11]    [12]    [13]    [14]