2008/09/23

  • Rendkívüli gyakorlatok vannak csütörtökön 13.30-kor a P7-ben.
  • A jóváírás feltételeit az első előadás tartalmazza.
  • Minden hallgatónak csak egy gyakorlati és egy elméleti gyakorlatban kell részt vennie

számítógépes gyakorlatok

komplexitás

  • Hétfő, 7.20, P3
  • Péntek, 9.00, P3
  • pénteken 14.00 órakor az érdeklődés hiánya miatt lemondott gyakorlat.

hitelfeltételek

  • gyakorlati gyakorlatokon való részvétel (20%)
  • házi feladat (egyszer két gyakorlatra) (30%)
  • végső projekt (30%)
  • teszt öröklési gyakorlat után (20%)

1. gyakorlat (2008. szeptember 17.)

Bevezetés a Java-ba. Osztályok és tárgyak. Az objektumok állapota (példányváltozói) és viselkedése (metódusai).

2. gyakorlat (2008. október 1.)

Privát példányváltozók. Gettery és setery. Túlterhelt módszerek. Kivitelezők. Mezők és listák. ToString (), egyenlő () és hashCode () metódusok .

3. gyakorlat (2008. október 8.)

Adatábrázolás. Hivatkozások, null. Csomagok. Kivételek.

4. gyakorlat (2008. október 15.)

Összetétel és öröklődés. Öröklési és átfedési módszerek. Polimorfizmus a példán. Absztrakt osztályok és módszerek.

5. gyakorlat (2008. október 22.)

Láthatóság-módosítók. Példányváltozók öröklése. A kivitelezők öröksége. Retyping. Kivételek II. Bemutatás

6. gyakorlat (2008. október 29.)

Kivételek III. Futásidejű kivételek. Dobó kivételek. Bemutatás

7. gyakorlat (2008. november 5.)

IV. Kivétel - az öröklés kivételekkel és az öröklési kivételek. Interfejsy. Statikus módszerek és változók. Bemutatás

8. gyakorlat (2008. november 12.)

9. gyakorlat (2008. november 21.)

10. gyakorlat (2008. november 28.)

Grafikus felhasználói felületek a Swing 2 - elrendezéskezelőkben. % red% Olyan diákat is tartalmaz, amelyek nem voltak az előadáson. Prezentáció PDF bemutató

11. gyakorlat (2008. december 10.)

1. gyakorlat (2008. szeptember 29.)

Egy őrült tudós laboratóriumában különféle kísérleteket végez halakkal. Több akváriumot vett, amelyekben egyféle halat használt. Minden akváriumban külön kísérlet van (besugárzás CRT monitor sugárzásával, MC Erik és Barbara vagy Immortal engedése, gyorséttermi táplálás ...). A kísérlet befejezése után a következő dolgok történhetnek:

  • a kísérlet sikeres volt, a hal kétszer megszaporodott
  • a kísérlet sikertelen volt, a lakosság fele kihalt
  • a kísérlet nem volt hatással a populációra, semmi sem történt. A kísérletek körökben zajlanak. Az őrült tudós minden akváriumon elvégez egy kísérletet, és az akváriumon végzett kísérletek befejezése után kiértékeli azokat. Ezután újabb kísérletet hajt végre.

Ezenkívül figyelembe veszik az akvárium kapacitását. Ha csak egy hal maradt az akváriumban, a populáció kihal. Ha a halak száma meghaladja az akvárium kapacitását, a populáció negyedére csökken.

Tervezzen meg egy megfelelő objektummodellt, és valósítson meg megfelelő osztályokat, amelyek megfelelnek ennek az információs rendszernek - azaz több akváriumon szimulálnak egy kísérletet.

2. gyakorlat (2008. október 6.)

Absztrakt halak helyett, amelyeket szám szerint képviselnek az akváriumban, konkrét egyedeket szeretnénk felvenni. Változtassa meg az akváriumot, hogy konkrét halakat láthassunk benne. A halállomány csökkentése/növelése érdekében változtassa meg a kísérleteket is.

  • Hozzon létre egy Fish osztályt, amelynek súlya, mérete, faja és azonosítója van.
  • Hozzon létre egy olyan takarmányozási módszert (), amely véletlenszerűen megváltoztatja az egyén súlyát és méretét. A súly az eredeti súly nulla és fele közötti értékkel növelhető. A méret növelhető az eredeti méret nulla és negyede közötti értékkel.
  • Tartsa az egyéneket az ArrayList akváriumában. Hagyja, hogy a kísérletek kidobják a halakat a listából, vagy adják hozzá a halakat a listához.
  • Adjon hozzá egy konstruktort a Rybicka osztályhoz, amely beállítja a hal típusát, és más értékeket automatikusan (név) vagy véletlenszerűen (súly és méret) állít be.
  • Fokozza a kísérletet úgy, hogy új egyének létrehozásakor véletlenszerűen azonosítson kettőt, akik az új egyén szülei lesznek. (Hadd hozzák létre a halfajokat szüleik fajainak nevéből.) Győződjön meg róla, hogy a hal képes emlékezni szüleire.

Küldje el a feladatot a name2 nevű ZIP fájlban (például: novotnyr2-zip) június 12-ig, vasárnapig, e-mailben.

3. gyakorlat (2008. október 13.)

Programozzon be egy Turing-gépi szimulátort.

A Turing-gép lazán szólva a számítógép elméleti modellje, amely lehetővé teszi bármely algoritmus futásának szimulálását. A modellnek több változata létezik, de a következőket fogjuk használni: A Turing-gép áll

  • dobozokba osztott végtelen szalag. A szalag egyirányú végtelen, ezért kezdete és végtelen hosszúságú. Minden mezőnek lehet 0 vagy 1 értéke.
  • a szalag fölött mozgó fej. A fej bármikor egy szalagmező fölött van. A fej kiolvashat egy mező értékét, és új értéket írhat rá.

A Turing-gép az egyik olyan állapotban lehet, amely fontos a programozásában. A Turing gép programja egy sor utasítás, amelyek a következő formában vannak:

Az utasítás azt jelenti, hogy ha a Turing-gép az adott állapotban van, és a fej az olvasott szimbólummal a mezőn van, akkor először egy új szimbólumot kell írnia a mezőre, majd a fejet balra vagy jobbra kell mozgatnia a következő mezőre.

Egy példa az utasításra a q_0 0 1 q_1 R. Ez azt jelenti, hogy ha a Turing-gép q_0 állapotban van, és a fej 0 szimbólumot olvas, akkor a mezőbe be kell írnia az 1. szimbólumot, a q_1 állapotba kell lépnie és jobbra kell mozognia (R = jobb, jobb).

Példák egy olyan Turing-gépre, amely felváltva állítja elő a nullákat és az egységeket (a végtelenségig):

Egy ilyen Turing-gép nem áll le. Eleinte q_0 állapotban van, kiolvassa a 0-t a szalagról, 1-et ír, fejét jobbra mozgatja és q_1 állapotba megy. A következő lépésben 0-t olvas, 1-et ír, jobbra mozgatja a fejet és q_0 állapotba megy. A q_0 és q_1 állapotok váltakoznak egymással (q_0 állapotban egységeket írunk és q_0 állapotban 0 értékeket írunk). Vegye figyelembe, hogy az utasításokat nem fentről lefelé hajtják végre, mint egy klasszikus Java programban, hanem a Turing-gép állapota alapján.

A Turing-gép másik példája egy olyan gép, amely három egységet ír szalagra:

Ha elkészült, a Turing-gép q_3 állapotban marad.

A szimulátorban ábrázolja az állapotokat számokkal, 0 és 1 logikai értékkel ábrázolható. A fej csak jobbra és balra mozoghat, amelyet logikai érték is képviselhet.

Az egyszerűség kedvéért egyelőre csak azokat az utasításokat vegye figyelembe, amelyek garantáltan leállnak (azaz nem mennek végtelen ideig a kazettára, vagy nem "taposnak" a helyszínen).

  • A házi feladatokat a Turing géppel 2008. október 25-ig kell elküldeni.

4. gyakorlat (2008. október 20.)

Térjen vissza az akváriumba az előző gyakorlatból. A projekt referencia megvalósítása itt található.

Az akváriumban nemcsak kishalakat, hanem más különleges állatokat is regisztrálni akarunk.

  • A húsevő halakra az a jellemző, hogy súlyuk legalább felével nőnek, és minden egyes etetés során legfeljebb megduplázzák a súlyukat. Ezenkívül megnöveli a hosszát a hosszának legalább a felével és legfeljebb egyszer a hosszával. Ezenkívül a húsevő halak megetik az akvárium lakóinak felét, ha etetik.
  • az akváriumhoz adott növekedésgyorsító hatására a kísérlet mindig a népesség növekedését okozza.

Ezenkívül győződjön meg arról, hogy az akvárium lakossága szöveges fájlból töltődik be.

5. gyakorlat (2008. október 27.)

Végezze el az előző feladatot. A házi feladatot e-mailben kell elküldeni.

6. gyakorlat (2008. november 4.)

Különböző díszítő játékokat szeretnénk hozzáadni az akváriumhoz - köveket, növényeket, műanyag tornyot ... A díszítő dolgoknak nincs hatása a kísérletekre, csak helyet foglalnak. Példa: a kályha helyet foglal 2 hal számára. Támogatást nyújt az akvárium díszeihez.

Dekorációs tárgyakat töltsön be egy fájlból.

Kezelje értelmesen a kivételeket a projekt során. Eddig a hibakörülményeket a konzol fogási blokkjában sorolták fel. Gondolja át és dolgozza át a hibakezelést.

7. gyakorlat (2008. november 10.)

Különféle statisztikákat akarunk készíteni az akváriumi halakról a kísérlet befejezése után: a halakat tömeg szerint, testtömegindex, méret stb. Szerint sorolja fel. Meg akarjuk találni a legnagyobb és legkisebb halakat is. Támogassa ezt a funkciót.

Térjünk vissza a Turing-géphez. Dolgozzon ki ésszerű kivételkezelést a Turing-gépen, és támogasson olyan programokat, amelyek nem állnak meg vagy taposnak a helyszínen.

8. gyakorlat (2008. november 24.)

Grafikus felhasználói felület. Töltse le a GUI-elemek: Tester csontvázat.

Az űrlapon jelenleg van egy panel (JPanel) és két gomb (JButton): a betöltéshez és a kísérleti lépéshez.

Végezze el a következő funkciókat:

  • a betöltés gomb megnyomásakor egy halhalmazt tölt be a fájlból (a betöltést el kell végezni). Minden halhoz egy JButtont hoz létre a panelben, véletlenszerű helyzetben. Ellenőrizze, hogy a gombok láthatók-e. A panel mérete 625 x 400 pixel.
  • a lépés gomb elindítja a kísérlet egyik lépését. Ezután állítsa be a gombok számát: ha több hal van, adjon hozzá gombokat. Ha a hal eltűnt, távolítsa el a megfelelő gombokat.

miután a halnak megfelelő gombra kattintott, rövid információkat jelenítsen meg róla (név, szülők, magasság, súly). Ehhez használja az üzenet párbeszédpanelt analóg módon:

Küldje el a megoldást e-mailben 2008. december 7-ig.

1. gyakorlat (2008. október 1.)

Egy algebraista mátrixokat szeretne olvasni egy szöveges fájlból, és azt szeretné, hogy írhassák őket egy konzolra, és fájlba. Ezen felül azt akarja, hogy hozzá tudja adni és megsokszorozza őket.

Készítsen osztályokat és megfelelő módszereket.

Az input-output módszerekkel való munka külön cikk.

2. gyakorlat (2008. október 9.)

A Prachy s.r.o. árfolyam-machinációkból akar keresni az Internet segítségével. Céljuk, hogy naponta több bank árfolyamát figyeljék, és kiderítsék az egyes pénznemek számára a legelőnyösebb árfolyamokat a deviza adásvételéhez.

Hozzon létre egy információs rendszert, amely megkerüli a bankok árfolyamait, és megtalálja az egyes devizák legalacsonyabb és legmagasabb vételárát. Az árfolyamok megtalálhatók az interneten, vagy letölthetők egy fájlból.

Kezdetben csak egy bankot, a Szlovák Nemzeti Bankot feltételezünk, amelynek árfolyamveszélye a http://www.nbs.sk/KL/KLSL2008/KL081009.SDF címen található.

Hozzon létre egy információs rendszert, amely támogatja a különböző forrásokból származó jegyek visszakeresését különböző formátumokban, és lehetővé teszi a tanfolyam fejlődésének nyomon követését az idő múlásával.

Gyakorlat (2008. november 20.)

Töltse ki a GUI-t az alkalmazás csontváza alapján. Győződjön meg arról, hogy az adatokat beolvassa az olvasó.