„Deklaratív programozás” változatai közötti eltérés

A VIK Wikiből
Nagy Marcell (vitalap | szerkesztései)
Aktualizálva a jelenlegi tantárgyhoz.
aNincs szerkesztési összefoglaló
 
(4 közbenső módosítás, amit 3 másik szerkesztő végzett, nincs mutatva)
5. sor: 5. sor:
|kredit=3
|kredit=3
|felev=7
|felev=7
|kereszt=nincs
|kiszh=nincs
|kiszh=nincs
|vizsga=nincs
|vizsga=nincs
14. sor: 15. sor:
|levlista=[http://bagira.iit.bme.hu/mailman/listinfo/dp-l lista]
|levlista=[http://bagira.iit.bme.hu/mailman/listinfo/dp-l lista]
}}
}}
Az informatikus alapképzés többi tárgyában a programozási paradigmák közül a procedurális és objektumorientált paradigmákra esik a hangsúly. Ezekkel a módszerekkel a Hogyan? kérdést igyekszünk megválaszolni kódírásnál. Az algoritmusok, állapotok pontos ismerete szükséges. Létezik egy másik család is, a deklaratív programozás, ami elsősorban a Mit? kérdésre ad választ: nem határozzuk meg pontosan, hogyan kapjuk meg az eredményt, csak azt, hogy mire van szükségünk. A tárgy ezt a családot mutatja be egy logikai és egy funkcionális programozási nyelven keresztül.


==Követelmények==
==Követelmények==
20. sor: 23. sor:
* Legalább 3 kisházi sikeres beadása (de mindkét nyelvből legalább 1)
* Legalább 3 kisházi sikeres beadása (de mindkét nyelvből legalább 1)
===Megajánlott jegy===
===Megajánlott jegy===
* Azok a hallgatók, akiknek a nagy házi feladata mindkét nyelven bejut a létraversenybe, megajánlott jegyet kaphatnak.
* Azok a hallgatók, akiknek a nagy házi feladata mindkét nyelven bejut a létraversenybe (80% vagy jobb teszteredmény), megajánlott jegyet kaphatnak. A létraversenyben az alap teszteknél nehezebb, időigényesebb tesztesetekkel futtatják a megoldásod, így igencsak hatékonyan kell megírod.
* Jó megajánlott jegyet kap az, aki sikeresen megvédi mindkét, a létraversenybe bejutott nagy házi feladatát.
** 4-es jegyhez a két nyelv nagy házijához dokumentációt is kell készíteni, és a házit meg kell védeni.
* Jeles megajánlott jegyet kap az, akinek programja ezen felül a létraverseny teszteseteinek legalább 40%-át időkorláton belül teljesíti.
** Jeles megajánlott jegyet kap az, akinek programja ezen felül a létraverseny teszteseteinek legalább 40%-át időkorláton belül teljesíti.


==A tárgyról==
==A tárgyról==
48. sor: 51. sor:
A tárgyból általában, de nem rendszeresen kéthetente hetente gyakorlatok vannak, az előadáson szereplő programozási nyelvnek megfelelően.
A tárgyból általában, de nem rendszeresen kéthetente hetente gyakorlatok vannak, az előadáson szereplő programozási nyelvnek megfelelően.


===Kis házi feladatok===
Gyakorlatok után érdemes az ETS-ben lévő feladatokat megoldani pluszban, önáló munkaként.
* Kötelező beadni a 7 kisháziből 3-at, de mindét nagy nyelvből legalább 1-1 kell hogy legyen.
 
==Kis házi feladatok==
* Kötelező beadni a 7 kisháziből 3-mat, de mindét nagy nyelvből legalább 1-1 kell hogy legyen.
* 3-3 feladat Prologból és Erlang-ból, és egy Céklából.
* 3-3 feladat Prologból és Erlang-ból, és egy Céklából.
* Beadás ETS-en keresztül, automatikusan tesztelésre kerül.
* Beadás ETS-en keresztül, automatikusan tesztelésre kerül.
55. sor: 60. sor:
* Össz. max. +7 pont.
* Össz. max. +7 pont.


===Nagy házi feladat===
==Nagy házi feladat==
* Nem kötelező beadni.
* Nem kötelező beadni. Ugyanakkor még ZH-ra készülés mellett is érdemes próbálkozni a feladat megoldásával, ráadásul néhány pontot könnyen lehet szerezni még akkor is, ha nem teljes és hatékony a megoldásod.
* 1 feladat, amit Prologban és Erlangban is meg lehet oldani.
* 1 feladat, amit Prologban és Erlangban is meg lehet oldani.
* 10 teszteset, 0,5 pont/helyes lefutás/nyelv.
* 10 teszteset, 0,5 pont/helyes lefutás/nyelv.
* 5 pont a doksi.
* 2,5 pont a doksi nyelvenként.
* Össz. 15 pont.
* Össz. 15 pont.
* A nagy házi megoldása időigényes, sok dolgot kell számításba venni. Előre nézd meg, a többi tárgy mellett lesz-e rá időd.
* A nehézség ellenére mégis érdemes erre hajtani, hiszen rögtön ki tudod próbálni a programot, ZH-n sokkal bizonytalanabb leszel, több időd jut megtervezni és elkészíteni a feladatot.


====Létraverseny====
* Azok a nagy házi feladatok vesznek részt a létraversenyen, amelyek az adott nyelven az éles teszteseteknek legalább 80%-át (azaz legalább 8 tesztesetet) időlimiten belül megoldanak.
* 10 teszteset van, az időlimit általában 120-180 másodperc/teszteset.
* Pontszám = ∑ min(futási idő, időlimit).
* Ha valamelyik nyelven n. helyezést érsz el, max(8-n/2, 0) pluszpontot kapsz vizsgán.


==Zárthelyi==
==Zárthelyi==
* Kötelező azoknak, akiknek nem fogadták el, vagy nem adtak be nagyházit.
* Kötelező azoknak, akiknek nem fogadták el, vagy nem adtak be nagyházit.
* Semmilyen jegyzet, segédlet nem használható.
* Semmilyen jegyzet, segédlet nem használható.
* A megtanulandó könyvtári függvények és eljárások listája előre meg van adva, a zh anyaga az előző hét végéig leadott anyag.
* A zh anyaga az egész féléves anyag, beleértve az előadáson elhangzott néhány alapszintű könyvtári függvényt/eljárást.
* A sikeres zh feltétele a maximális részpontszám 40%-ának megszerzése mindkét nyelven.
* A sikeres zh feltétele a maximális részpontszám 40%-ának megszerzése mindkét nyelven.
* Össz. 15 pont.
* Össz. 85 pont.
* A ZH-n mindkét nyelv részének max pontszáma 85. A végeredménynél ezek számtani átlagát veszik.


* [[Deklaratív programozás - Tippek ZH-ra és vizsgára | Tippek ZH-ra és vizsgára]]
* [[Deklaratív programozás - Tippek ZH-ra és vizsgára | Régi tárgyhoz tartozó tippek ZH-ra és vizsgára]]


==Hasznos fordítók és futtató környezetek a házikhoz==
==Hasznos fordítók és futtató környezetek a házikhoz==
88. sor: 91. sor:
** Jobb alul a Solutions -> Debug (trace)-re kattintva lehet debug-olni.
** Jobb alul a Solutions -> Debug (trace)-re kattintva lehet debug-olni.
* [http://www.tutorialspoint.com/execute_prolog_online.php tutorialspoint - Coding Ground]
* [http://www.tutorialspoint.com/execute_prolog_online.php tutorialspoint - Coding Ground]
{{Lábléc_-_Mérnök_informatikus_alapszak}}
 
 
{{Lábléc_-_Mérnök_informatikus_alapszak 2014}}

A lap jelenlegi, 2024. május 28., 12:16-kori változata

Deklaratív programozás
Tárgykód
VISZAD00
Régi tárgykód
VISZA402,VISZA403
Általános infók
Szak
info
Kredit
3
Ajánlott félév
7
Keresztfélév
nincs
Követelmények
KisZH
nincs
NagyZH
van
Házi feladat
7 kisHF + opcionális nagyHF
Vizsga
nincs
Elérhetőségek
Levlista

Az informatikus alapképzés többi tárgyában a programozási paradigmák közül a procedurális és objektumorientált paradigmákra esik a hangsúly. Ezekkel a módszerekkel a Hogyan? kérdést igyekszünk megválaszolni kódírásnál. Az algoritmusok, állapotok pontos ismerete szükséges. Létezik egy másik család is, a deklaratív programozás, ami elsősorban a Mit? kérdésre ad választ: nem határozzuk meg pontosan, hogyan kapjuk meg az eredményt, csak azt, hogy mire van szükségünk. A tárgy ezt a családot mutatja be egy logikai és egy funkcionális programozási nyelven keresztül.

Követelmények

Félévközi feladatok

  • Sikeres nagyZH (azaz mindkét nyelvből legalább 40%-os teljesítmény)
  • Legalább 3 kisházi sikeres beadása (de mindkét nyelvből legalább 1)

Megajánlott jegy

  • Azok a hallgatók, akiknek a nagy házi feladata mindkét nyelven bejut a létraversenybe (80% vagy jobb teszteredmény), megajánlott jegyet kaphatnak. A létraversenyben az alap teszteknél nehezebb, időigényesebb tesztesetekkel futtatják a megoldásod, így igencsak hatékonyan kell megírod.
    • 4-es jegyhez a két nyelv nagy házijához dokumentációt is kell készíteni, és a házit meg kell védeni.
    • Jeles megajánlott jegyet kap az, akinek programja ezen felül a létraverseny teszteseteinek legalább 40%-át időkorláton belül teljesíti.

A tárgyról

Kapcsolódó tárgyak

Miből érdemes tanulni?

Gyakorlatok

A tárgyból általában, de nem rendszeresen kéthetente hetente gyakorlatok vannak, az előadáson szereplő programozási nyelvnek megfelelően.

Gyakorlatok után érdemes az ETS-ben lévő feladatokat megoldani pluszban, önáló munkaként.

Kis házi feladatok

  • Kötelező beadni a 7 kisháziből 3-mat, de mindét nagy nyelvből legalább 1-1 kell hogy legyen.
  • 3-3 feladat Prologból és Erlang-ból, és egy Céklából.
  • Beadás ETS-en keresztül, automatikusan tesztelésre kerül.
  • Minden feladat jó megoldásáért 1-1 pluszpont.
  • Össz. max. +7 pont.

Nagy házi feladat

  • Nem kötelező beadni. Ugyanakkor még ZH-ra készülés mellett is érdemes próbálkozni a feladat megoldásával, ráadásul néhány pontot könnyen lehet szerezni még akkor is, ha nem teljes és hatékony a megoldásod.
  • 1 feladat, amit Prologban és Erlangban is meg lehet oldani.
  • 10 teszteset, 0,5 pont/helyes lefutás/nyelv.
  • 2,5 pont a doksi nyelvenként.
  • Össz. 15 pont.
  • A nagy házi megoldása időigényes, sok dolgot kell számításba venni. Előre nézd meg, a többi tárgy mellett lesz-e rá időd.
  • A nehézség ellenére mégis érdemes erre hajtani, hiszen rögtön ki tudod próbálni a programot, ZH-n sokkal bizonytalanabb leszel, több időd jut megtervezni és elkészíteni a feladatot.


Zárthelyi

  • Kötelező azoknak, akiknek nem fogadták el, vagy nem adtak be nagyházit.
  • Semmilyen jegyzet, segédlet nem használható.
  • A zh anyaga az egész féléves anyag, beleértve az előadáson elhangzott néhány alapszintű könyvtári függvényt/eljárást.
  • A sikeres zh feltétele a maximális részpontszám 40%-ának megszerzése mindkét nyelven.
  • Össz. 85 pont.
  • A ZH-n mindkét nyelv részének max pontszáma 85. A végeredménynél ezek számtani átlagát veszik.

Hasznos fordítók és futtató környezetek a házikhoz

Emacs howto Windows alá

Írtam egy rövid összegzést arról, hogy az emacsot mi módon lehet Windows alatt összekapcsolni az SML és Prolog fordítókkal: Emacs telepítési lépések.

Online Prolog IDE-k

  • SWISH
    • Bal oldalt kell megadni a kódot, jobb alul a futtatandó parancsot és jobb felül jelenik meg az eredmény.
    • Jobb alul a Solutions -> Debug (trace)-re kattintva lehet debug-olni.
  • tutorialspoint - Coding Ground


Bevezetők
1. félév
2. félév
3. félév
4. félév
5. félév
6. félév
7. félév