12 Programtervezés szek (while do ciklusok). Mint látható, ebbõl a szemléletbõl a goto utasítás teljesen hiányzik, ennek használata kerülendõ. Ebben a
|
|
- Diána Fodorné
- 8 évvel ezelőtt
- Látták:
Átírás
1 2. fejezet Strukturált programozás 2.1. Bevezetés A strukturált programozás jelenti valamennyi ma használatos programtervezési módszer alapját. Ebben a fejezetben a strukturált programozással kapcsolatos alapokat és gyakorlati kérdéseket tekintjük át. Olyan kérdésekre akarunk válaszolni, mint például hogy mi a strukturált programozás lényege? Mi a szerepe a goto parancsnak? Miért érdemes bizonyos vezérlési szerkezeteket gyakrabban használni? A strukturált programozás ma már szerves része valamennyi programtervezési módszernek. Napjainkban már széles körben elfogadott az a nézet, hogy a strukturált programozás a programfejlesztés nemcsak hasznos, hanem gyakorlatilag egyetlen lehetséges módja. Ugyanakkor nem volt ez mindig ennyire egyértelmû. Nem is oly régen heves vita folyt arról, hogy használható-e valamire ez a megközelítési mód, és hogy egyáltalán jó ötlet volt-e felvetni a használatát. A strukturált programozás egyik alapelve szerint a programok összesen háromféle építõelembõl állnak össze: vannak utasítássorok (ezek tagjait a végrehajtás sorrendjében adjuk meg), vannak döntési szerkezetek (if then else szerkezetek) és vannak ismétlõdõ ré-
2 12 Programtervezés szek (while do ciklusok). Mint látható, ebbõl a szemléletbõl a goto utasítás teljesen hiányzik, ennek használata kerülendõ. Ebben a fejezetben hamarosan megvizsgáljuk majd a goto mellett és ellen szóló érveket. Már itt elárulhatjuk a végeredményt: a goto utasítás tulajdonképpen szükségtelen. A lényeg az, hogy a programnak jól átgondolt szerkezete legyen. A késõbbiekben megvizsgáljuk a strukturált programozás alapelemeit. Érintünk ezen kívül néhány kiegészítõ kérdést is. Ha a strukturált programozás három építõelemét folyamatábrán szemléltetjük (2.1. ábra), rögtön nyilvánvalóvá válik ennek a tervezési módszernek néhány alapvetõ tulajdonsága: 1. Minden építõelemnek csak egy belépési pontja van. 2. Egyetlen programelem sem tartalmaz háromnál több alapelemet. Ha a három alapelemet úgy ábrázoljuk, ahogyan a gyakorlatban használjuk õket, egy harmadik alaptulajdonság is felismerhetõvé válik: 3. A belépési pont a program elején, a kilépési pont pedig a végén található. 2.1 ábra De miért is olyan fontosak ezek a tulajdonságok? Miért zárjuk ki más, egyébként ugyanilyen tulajdonságokkal rendelkezõ szerkezetek (2.2. ábra) használhatóságát? Ebben a fejezetben ezekre a kérdésekre fogunk választ adni.
3 Strukturált programozás ábra 2.2. Miért ne használjuk a goto parancsot? A goto parancs használata fölösleges A Bohm és Jacopini (1966) által bebizonyított tétel szerint a goto parancs segítségével megírt bármely program megírható pusztán a strukturált programozás alapelemeinek használatával is. Az így átalakított programban valószínûleg szükség lesz néhány új, a döntési szerkezetekben címkeként vagy jelzõként használatos változó bevezetésére. Valójában az ilyen programok néha kissé mesterkéltnek tûnhetnek, de maga az átalakítás mindig elvégezhetõ. Ennek megfelelõen pusztán elvi síkon nincs szükség arra, hogy bármely programunkban a goto parancsot használjuk. Érdemes talán még megjegyezni, hogy a fent említett tétel arra nézve semmit sem állít, hogy a strukturálatlan programot miként alakítsuk strukturálttá. Csupán azt mutatja meg, hogy ez az átalakítás elvégezhetõ. Kísérleti tapasztalatok A strukturált programozás mint tervezési és megvalósítási módszer jól megalapozott, és általánosan elfogadott. Ezek alapján logikusnak
4 14 Programtervezés tûnhet az a feltételezés, hogy a gyakorlat immár egyértelmûen bebizonyította a módszer használhatóságát. Ez azonban nem igaz. Gyakorlatilag egyáltalán nem léteznek valós problémák megoldásán alapuló bizonyítékok a strukturált programozás mellett. Ennek pedig javarészt az az oka, hogy egy ilyen kísérlet végrehajtása igen körülményes és drága lenne. Kétszer kellene megíratni egy nagy programrendszert programozók két csoportjával. Egyszer végig a strukturált programozás alapelveit kellene használni, egyszer pedig a strukturálatlan elveket. Természetesen mindkét munkafolyamatnak megfelelõ központi irányítással kellene rendelkeznie. Ezek után a két elkészült programot össze kellene hasonlítani bizonyos gyakorlati szempontok alapján. Ilyen szempont lehetne a program megírására fordított idõ, vagy a felfedezett hibák száma. Sajnálatos módon egyetlen ilyen összehasonlítás sem készült a mai napig. Ugyanakkor léteznek olyan, kisebb feladatokkal kapcsolatos összehasonlító tanulmányok, amelyek során azt vizsgálták, hogy a témában járatos programozók mennyire könnyen értenek meg egy forráskódot, ha az strukturált vagy ha strukturálatlan. Egy csoport minden tagjának megmutatták egy strukturált program forráskódját, majd a programozóknak olyan kérdésekre kellet válaszolniuk, amelyek alapján felmérhetõ volt, milyen mélységig látták át a program szerkezetét. Mérték mind a válaszok pontosságát, mind a válaszadáshoz szükséges idõt. Ez a két alapvetõ jellemzõ azt mutatja meg, hogy az adott programot egy programozó mennyire gyorsan tudja karbantartani, vagy mennyire könnyû a kód nyomkövetése. Egy másik csoport tagjai ugyanennek a programnak a strukturálatlan átiratát kapták meg. Végül összehasonlították a két csoport válaszidõit, illetve a válaszok pontosságát. Valamennyi ilyen vizsgálat azt bizonyította, hogy a strukturált programok sokkal jobban idomulnak az említett gyakorlatias igényekhez. A fejezet végén felsoroltuk azon szakcikkek bibliográfiai adatait, amelyek e téma áttekintésével foglalkoztak. Egy ilyen, 1984-ben megjelent áttekintõ cikkben jóval azután, hogy a strukturált programozás körüli csaták zaja elcsendesedett Vessey és Weber arra a következtetésre jutott, hogy a strukturált programozás használhatóságát alátámasztó érvek meglehetõsen gyengék. Ennek a velõs megállapításnak hátterében leginkább az áll, hogy nehéz valóban megbízható kísérleteket tervezni és végrehajtani.
5 Strukturált programozás 15 Világos írásmód és kifejezõerõ Hasonlítsuk össze a következõ, egymásnak mindenben megfelelõ programrészleteket: label: while a > 0 do if a > 0 goto label endwhile Ha az elsõ kódot felülrõl lefelé haladva olvassuk, nem világos azonnal, hogy mi a szerepe a label nevû címkének és a goto parancsnak. Egy valós helyzetben valószínûleg eltart majd egy ideig, mire rájövünk, hogy ezek tulajdonképpen egy ismétlõdõ kódrészlet megvalósítására szolgálnak. Ugyanez a második program while parancsát olvasva azonnal nyilvánvaló. És ami még ennél is rosszabb, az elsõ esetben soha nem lehetünk teljesen biztosak benne, hogy nincs valahol a programban még egy goto parancs, ami ugyanerre a címkére ugrik. Egy programozási nyelv elemeinek lehetõvé kell tenniük, hogy a programozó világos módon írhassa le, amit meg akar valósítani. Ha megvizsgálunk egy goto parancsokat is tartalmazó programot, rendszerint azt fogjuk tapasztalni, hogy a goto több, egymástól teljesen különbözõ cél megvalósítására is használható. Lássunk ezek közül néhányat: Kikerülhetünk vele egy kódrészletet (amit más körülmények között kell végrehajtani). Megvalósíthatunk vele ismétlõdést. Kiléphetünk vele egy ciklusból. Meghívhatunk vele egy megosztott kódrészletet. Ha egy kódban látunk egy goto parancsot, a környezete általában meglehetõsen kevés információt szolgáltat arról, mi is volt vele a programozó szándéka. A megoldás természetesen az, ha minden
6 16 Programtervezés helyzetben a megfelelõ egyedi és egyértelmû nyelvi elemet használjuk. A fenti felsorolásnak megfelelõ sorrendben ezek az egyedi elemek a következõk: if then else while do vagy repeat until exit eljáráshívás A goto parancs tehát olyan, mint egy egészen egyszerû gépi parancs például egy adott regiszter feltöltésére szolgáló gépi utasítás, ami számos egészen különbözõ helyzetben használható, de egyik esetben sem derül ki egyértelmûen a használat célja. Összefoglalva tehát a goto-nak kicsi a kifejezõereje, így nehéz megérteni az olyan programok belsõ logikáját, amelyek erre támaszkodnak. Ha olvasunk egy forráskódot, és olyan utasításokat látunk, mint a while vagy az if, akkor egészen határozott elképzelésünk van az adott helyzetrõl. Ha egy goto-t látunk, legfeljebb találgatni tudunk. Hány ceruza? Tegyük fel, hogy meg akarjuk érteni egy program mûködését, ezért az elejétõl kezdve elkezdjük úgy olvasni, ahogy a számítógép teszi, és gondolatban végrehajtjuk az utasításokat. Tegyük fel továbbá, hogy van néhány ceruzánk (vagy ujjunk), amelyek segítségünkre lehetnek a dolgok követésében. A ceruzákat jelzõként fogjuk elhelyezni a kódszöveg azon pontjain, amelyek valamiért érdekesek lehetnek. Ha egy egyszerû utasítássort hajtunk végre, mindössze egy ceruzára lesz szükségünk ahhoz, hogy mindig pontosan tudjuk, hol tartunk. Ha belefutunk egy eljáráshívásba, már két ceruza kell. Az egyiket a meghívás helyén kell hagynunk, hogy tudjuk, hová kell majd visszatérni, a másikkal pedig az eljárás utasításait fogjuk követni. Ha egy while vagy for utasítást látunk, szükségünk lesz egy számlálóra is, amellyel azt tartjuk számon, hogy hányszor hajtottuk végre a ciklusmagot.
7 Strukturált programozás 17 Összefoglalva tehát, ha strukturált programmal van dolgunk, akkor kell: 1. egy ceruza az aktuális hely számontartása végett; 2. egy-egy ceruza minden olyan eljáráshíváshoz, amelybõl a végrehajtás még nem tért vissza; 3. egy-egy számláló minden egyes még be nem fejezett ciklushoz. Ez így elsõre meglehetõsen sok kiegészítõ felszerelésnek tûnhet, de gondoljuk csak meg, mi történne, ha mindezt goto parancsokkal valósítanánk meg. Akárcsak az elõbb, ekkor is szükségünk lenne egy ceruzára az aktuális utasítás nyilvántartásához. Szükségünk lenne aztán minden egyes végrehajtott goto parancs jelzésére. Míg azonban a strukturált programok esetében elvehetünk egy ceruzát, valahányszor visszatértünk egy eljárásból vagy befejeztünk egy ciklust, illetve döntési szerkezetet, most a ceruzák száma soha nem csökken, sõt egyre többre lesz szükség. A ceruzák növekvõ száma pedig egyértelmûen jelzi a goto paranccsal megvalósított szerkezetek összetettségét. Az igazi probléma akkor válik nyilvánvalóvá, ha megpróbálunk visszaemlékezni arra, hol jártunk, mielõtt egy adott ponthoz érkeztünk. Ha nincs goto parancs, akkor egyszerûen visszalapozunk a kódszövegben. A strukturálatlan program esetében csak addig lehetünk magabiztosak, amíg a visszagörgetés során el nem érkezünk az elsõ címkéhez. Itt ugyanis semmilyen módon nem fogjuk tudni megállapítani, honnan és hogyan kerültünk a program kérdéses pontjára. Az olvasás megkönnyítése (statikus és dinamikus szerkezetek) Mi itt a mûvelt Nyugaton alaposan hozzászoktunk ahhoz, hogy az írott szövegeket balról jobbra és felülrõl lefelé haladva olvassuk. Ennek megfelelõen nagyon kényelmetlennek és természetellenesnek érezzük, ha egy kódszöveget elõbb felülrõl lefelé kell olvasni, majd idõnként visszaugrani benne. Sokkal egyszerûbb a dolgokat mindig a megadás sorrendjében olvasni. Ez pedig éppen a strukturált programok egyik nagy elõnye. Ezeket mindig végig lehet olvasni felülrõl
8 18 Programtervezés lefelé haladva, feltéve persze, hogy nem tartalmaznak eljáráshívásokat. Az egyetlen kivétel a while ciklus, ahol az ismétlõdõ kódrészlet elején található ciklusfeltételt minden végrehajtás után meg kell vizsgálnunk. A programok mûködése szükségszerûen dinamikus, hiszen valamennyien egy-egy kívülrõl szabályozott folyamatnak tekinthetõk, a program forráskódja azonban statikus szöveg. Ha meg akarjuk könnyíteni a kód megértését, e két ellentétes dolog között kell valahogyan összhangot teremtenünk. A statikus szövegnek szerkezetével tükröznie kell az általa leírt folyamatokat. A strukturált programok esetében a részfolyamatok sorrendje közelítõleg mindig megfelel a programsorok írási sorrendjének, ami lehetõvé teszi, hogy a kódot felülrõl lefelé, vagyis a lehetõ legtermészetesebb módon olvassuk. A programok helyességének bizonyítása Bebizonyítani azt, hogy formailag valamennyi programunk helyes, a ma technikájával egyszerûen lehetetlen. Ugyanakkor van néhány olyan dolog, ami nem árt tudni a programok helyességének bizonyításával kapcsolatban. A bizonyítás egyik módja az, hogy néhány stratégiai fontossággal bíró ponton ellenõrizzük bizonyos logikai feltételek teljesülését. Az ilyen ellenõrzésnek mindig az a lényege, hogy a program által kezelt adatokkal kapcsolatban megfogalmazunk olyan logikai feltéteket, amelyeknek mindig igaznak kell lenniük. Ha az ellenõrzést a program elején és végén hajtjuk végre, akkor bemeneti feltételrõl és kimeneti feltételrõl beszélünk. A program helyességének bizonyítása tulajdonképpen azt jelenti, hogy matematikai szigorúsággal megmutatjuk, hogy ha programunk bemenete helyes, akkor a kimenete is mindig helyes lesz. A strukturált programok csupa olyan elembõl állnak, amelyeknek egyetlen belépési és egyetlen kilépési pontja van. Ez önmagában is jelentõsen megkönnyíti a program mûködésével kapcsolatos bizonyítások elvégzését. Ugyanakkor, ha a program goto utasításokat is
9 Strukturált programozás 19 tartalmaz, gyakran lehetetlen világosan elkülöníteni benne a szerepükben független, egy bemenettel és egy kimenettel rendelkezõ modulokat. Még ha nem is használunk formális módszereket a helyesség bizonyítására, csupán egyszerû szemrevételezéssel próbáljuk eldönteni, hogy programunk jól vagy rosszul mûködik, a logikai rendszer átlátását akkor is nagyban elõsegíti, ha az említett egyszerû tulajdonsággal rendelkezõ elemekbõl építkezünk Miért használjuk mégis a goto parancsot? A szakértelem csorbítása Akárhogy is nézzük, a goto parancs is része a programozási nyelv eszközkészletének. Ha egyszerûen megtiltjuk a használatát, azzal a programozó kezébõl kivesszük ezt az eszközt, és abban is megakadályozzuk, hogy a megfelelõ helyzetekben értelmes módon felhasználja. Képzeljünk el egy kézmûvest, akinek az a specialitása, hogy fából különbözõ használati tárgyakat készít. Tegyük fel, hogy ettõl az embertõl elveszünk egy olyan eszközt például egy baltát amirõl úgy gondoljuk, hogy nincs is igazán szüksége rá. Ezzel nyilván lecsökkentettük a választási lehetõségeit, és azt a képességét is fölöslegessé tettük, amely a balta használatához szükséges. (Ugyanakkor lehetnek olyan helyzetek, amikor a legalkalmasabb munkaeszköz éppen a balta lenne.) Kivételek Viszonylag gyakran bukkan fel a programozás során az a követelmény, hogy a kész program képes legyen bizonyos hibák felismerésére és kezelésére. Tegyük fel, hogy egy ilyen kezelendõ hiba az eljáráshívások sokadik mélységi szintjén következik be. A hibakezelés egyik lehetséges módja az, hogy valamennyi eljáráshívásnál meg-
10 20 Programtervezés adunk még egy bemenõ paramétert. Ez az eljárás persze igencsak kényelmetlenné válhat, hiszen minden eljárásnál kínosan ügyelnünk kell arra, hogy átadjuk neki azt a paramétert, amit valószínûleg nem is fog semmire használni. Sokkal jobb megoldásnak tûnik, ha egy goto paranccsal bármely eljárásból a program egy adott helyére ugorhatunk, ahol aztán központilag kezelhetjük a hibát. Ez nyilvánvalóan a programszerkezet lényeges egyszerûsödését eredményezi. A megoldás lényege tulajdonképpen az, hogy egy kivételes helyzet kezelésére egy kivételes megoldást használunk. Persze egyes programnyelvek ilyen például az Ada ezt a problémát eleve megoldják azzal, hogy a kivételkezeléshez külön eszközöket biztosítanak. A programok teljesítménye Egyes esetekben egy goto parancsok segítségével megvalósított program gyorsabban futhat, mint egy olyan, amiben mellõztük a goto használatát. Jó példa erre az az eset, amikor egy a táblázatban egy x értéket kell megkeresnünk: for i:=1 to a_tablazat_merete do if a(i)=x then goto megtalaltuk endif endfor nem_talaltuk_meg: megtalaltuk: Ugyanezt egy szép strukturált program formájában a következõképpen lehetne megvalósítani: i:=1 while i<a_tablazat_merete and a(i) not = x
BASH script programozás II. Vezérlési szerkezetek
06 BASH script programozás II. Vezérlési szerkezetek Emlékeztető Jelölésbeli különbség van parancs végrehajtása és a parancs kimenetére való hivatkozás között PARANCS $(PARANCS) Jelölésbeli különbség van
Java programozási nyelv
Java programozási nyelv 2. rész Vezérlő szerkezetek Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/23 Tartalomjegyzék
Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések. 1. Mi a programozás?
Bevezetés Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések Forráskód Hibajegyzék p2p.wrox.com xiii xiii xiv xiv xvi xvii xviii
Webprogramozás szakkör
Webprogramozás szakkör Előadás 5 (2012.04.09) Programozás alapok Eddig amit láttunk: Programozás lépései o Feladat leírása (specifikáció) o Algoritmizálás, tervezés (folyamatábra, pszeudokód) o Programozás
1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje
1. Alapfogalmak 1.1. Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt
Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):
Javascript Változók Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai): Név Érték Típus Memóriacím A változó értéke (esetleg más attribútuma is) a program futása
Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):
Python Változók Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai): Név Érték Típus Memóriacím A változó értéke (esetleg más attribútuma is) a program futása alatt
1. Jelölje meg az összes igaz állítást a következők közül!
1. Jelölje meg az összes igaz állítást a következők közül! a) A while ciklusban a feltétel teljesülése esetén végrehajtódik a ciklusmag. b) A do while ciklusban a ciklusmag után egy kilépési feltétel van.
6. fejezet: Ciklusok
6. fejezet: Ciklusok Mint a nyelvekben általában, itt is léteznek ciklusok. Az alapvető három ciklus-típus: elöltesztelő, hátultesztelő és számláló. Lássuk ezeket sorban! Elöltesztelő = while. A while
Bevezetés az informatikába
Bevezetés az informatikába 6. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.
Programozási nyelvek (ADA)
Programozási nyelvek (ADA) Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 3. előadás Programozási nyelv felépítése szabályok megadása Lexika Milyen egységek építik fel? Szintaktikus szabályok
Operációs rendszerek. 11. gyakorlat. AWK - szintaxis, vezérlési szerkezetek UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED
UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED AWK - szintaxis, vezérlési szerkezetek Operációs rendszerek 11. gyakorlat Szegedi Tudományegyetem Természettudományi és Informatikai Kar Csuvik
A függvény kód szekvenciáját kapcsos zárójelek közt definiáljuk, a { } -ek közti részt a Bash héj kód blokknak (code block) nevezi.
Függvények 1.Függvények...1 1.1.A függvény deníció szintaxisa... 1..Függvények érték visszatérítése...3 1.3.Környezettel kapcsolatos kérdések...4 1.4.Lokális változók használata...4 1.5.Rekurzív hívások...5.kód
Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10.
Programozás I. 1. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2012. szeptember 10. Sergyán (OE NIK) Programozás I. 2012. szeptember 10. 1 /
... fi. ... fk. 6. Fabejáró algoritmusok Rekurzív preorder bejárás (elsőfiú-testvér ábrázolásra)
6. Fabejáró algoritmusok Fa bejárásán olyan algoritmust értünk, amelynek bemenete egy F fa és egy M művelet, és az algoritmus adott sorrendben pontosan egyszer végrehajtja az M műveletet a fa pontjaiban
Szoftver-mérés. Szoftver metrikák. Szoftver mérés
Szoftver-mérés Szoftver metrikák Szoftver mérés Szoftver jellemz! megadása numerikus értékkel Technikák, termékek, folyamatok objektív összehasonlítása Mér! szoftverek, programok CASE eszközök Kevés szabványos
Vezérlési szerkezetek
Vezérlési szerkezetek Szelekciós ok: if, else, switch If Segítségével valamely ok végrehajtását valamely feltétel teljesülése esetén végezzük el. Az if segítségével valamely tevékenység () végrehajtását
Algoritmusok helyességének bizonyítása. A Floyd-módszer
Algoritmusok helyességének bizonyítása A Floyd-módszer Algoritmusok végrehajtása Egy A algoritmus esetében a változókat három változótípusról beszélhetünk, melyeket az X, Y és Z vektorokba csoportosítjuk
ALGORITMIKUS SZERKEZETEK ELÁGAZÁSOK, CIKLUSOK, FÜGGVÉNYEK
ALGORITMIKUS SZERKEZETEK ELÁGAZÁSOK, CIKLUSOK, FÜGGVÉNYEK 1. ELÁGAZÁSOK ÉS CIKLUSOK SZERVEZÉSE Az adatszerkezetek mellett a programok másik alapvető fontosságú építőkövei az ún. algoritmikus szerkezetek.
AWK programozás, minták, vezérlési szerkezetek
10 AWK programozás, minták, vezérlési szerkezetek AWK futtatási módok AWK parancs, közvetlen programkódmegadás: awk 'PROGRAMKÓD' FILE példa: ls -l awk '{print $1, $5}' a programkód helyére minden indentálás
Programozási módszertan. Mohó algoritmusok
PM-08 p. 1/17 Programozási módszertan Mohó algoritmusok Werner Ágnes Villamosmérnöki és Információs Rendszerek Tanszék e-mail: werner.agnes@virt.uni-pannon.hu PM-08 p. 2/17 Bevezetés Dinamikus programozás
Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés. Szekvenciális fájlkezelés Fájlok használata
Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba I 4. gyakorlat PLanG: 2011.10.04. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Fájlok
Algoritmusok, adatszerkezetek, objektumok
Algoritmusok, adatszerkezetek, objektumok 1. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. szeptember 14. Sergyán (OE NIK) AAO 01 2011.
Programozási segédlet
Programozási segédlet Programozási tételek Az alábbiakban leírtam néhány alap algoritmust, amit ismernie kell annak, aki programozásra adja a fejét. A lista korántsem teljes, ám ennyi elég kell legyen
A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai
A programozás alapjai 1 1. előadás Híradástechnikai Tanszék Amiről szólesz: A tárgy címe: A programozás alapjai A számítógép részegységei, alacsony- és magasszintű programnyelvek, az imperatív programozási
Bánsághi Anna 2014 Bánsághi Anna 1 of 68
IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 3. ELŐADÁS - PROGRAMOZÁSI TÉTELEK 2014 Bánsághi Anna 1 of 68 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív
Programtervezés. Dr. Iványi Péter
Programtervezés Dr. Iványi Péter 1 A programozás lépései 2 Feladat meghatározás Feladat kiírás Mik az input adatok A megoldáshoz szükséges idő és költség Gyorsan, jót, olcsón 3 Feladat megfogalmazása Egyértelmű
Algoritmizálás és adatmodellezés tanítása 1. előadás
Algoritmizálás és adatmodellezés tanítása 1. előadás Algoritmus-leíró eszközök Folyamatábra Irányított gráf, amely csomópontokból és őket összekötő élekből áll, egyetlen induló és befejező éle van, az
Segédanyagok. Formális nyelvek a gyakorlatban. Szintaktikai helyesség. Fordítóprogramok. Formális nyelvek, 1. gyakorlat
Formális nyelvek a gyakorlatban Formális nyelvek, 1 gyakorlat Segédanyagok Célja: A programozási nyelvek szintaxisának leírására használatos eszközök, módszerek bemutatása Fogalmak: BNF, szabály, levezethető,
1. Alapok. #!/bin/bash
1. oldal 1.1. A programfájlok szerkezete 1. Alapok A bash programok tulajnképpen egyszerű szöveges fájlok, amelyeket bármely szövegszerkesztő programmal megírhatunk. Alapvetően ugyanazokat a at használhatjuk
Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés
Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba I 4. gyakorlat PLanG: 2011.10.04. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Fájlok
Dinamikus programozás - Szerelőszalag ütemezése
Dinamikus programozás - Szerelőszalag ütemezése A dinamikus programozás minden egyes részfeladatot és annak minden részfeladatát pontosan egyszer oldja meg, az eredményt egy táblázatban tárolja, és ezáltal
Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10.
Programozás I. 1. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2012. szeptember 10. Sergyán (OE NIK) Programozás I. 2012. szeptember 10. 1 /
Kompetens szoftvertesztelés a gyakorlatban II. zárthelyi dolgozat
Név:...................................... Neptunkód:................... Kompetens szoftvertesztelés a gyakorlatban II. zárthelyi dolgozat 2015. április 22. (szerda) Kitöltési útmutató A dolgozat kitöltéséhez
A programozás alapjai
A programozás alapjai Változók A számítógép az adatokat változókban tárolja A változókat alfanumerikus karakterlánc jelöli. A változóhoz tartozó adat tipikusan a számítógép memóriájában tárolódik, szekvenciálisan,
sallang avagy Fordítótervezés dióhéjban Sallai Gyula
sallang avagy Fordítótervezés dióhéjban Sallai Gyula Az előadás egy kis példaprogramon keresztül mutatja be fordítók belső lelki világát De mit is jelent, az hogy fordítóprogram? Mit csinál egy fordító?
Irányítástechnika 1. 9. Elıadás. PLC-k programozása
Irányítástechnika 1 9. Elıadás PLC-k programozása Irodalom - Helmich József: Irányítástechnika I, 2005 - Zalotay Péter: PLC tanfolyam - Jancskárné Anweiler Ildikó: PLC programozás az IEC 1131-3 szabvány
Java programozási nyelv 9. rész Kivételkezelés
Java programozási nyelv 9. rész Kivételkezelés Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/24 Tartalomjegyzék
S z á m í t ó g é p e s a l a p i s m e r e t e k
S z á m í t ó g é p e s a l a p i s m e r e t e k 7. előadás Ami eddig volt Számítógépek architektúrája Alapvető alkotóelemek Hardver elemek Szoftver Gépi kódtól az operációs rendszerig Unix alapok Ami
BASH SCRIPT SHELL JEGYZETEK
BASH SCRIPT SHELL JEGYZETEK 1 TARTALOM Paraméterek... 4 Változók... 4 Környezeti változók... 4 Szűrők... 4 grep... 4 sed... 5 cut... 5 head, tail... 5 Reguláris kifejezések... 6 *... 6 +... 6?... 6 {m,n}...
Minta. Javítási-értékelési útmutató az emelt szintű írásbeli vizsgához. Íráskészség
Javítási-értékelési útmutató az emelt szintű írásbeli vizsgához Íráskészség Az írásfeladatok értékelése központilag kidolgozott analitikus skálák segítségével történik. Ez az értékelési eljárás meghatározott
15. Programok fordítása és végrehajtása
15. Programok fordítása és végrehajtása Programok fordítása és végrehajtása. (Fordítás és interpretálás, bytecode. Előfordító, fordító, szerkesztő. A make. Fordítási egység, könyvtárak. Szintaktikus és
AWK programozás, minták, vezérlési szerkezetek
10 AWK programozás, minták, vezérlési szerkezetek AWK adatvezérelt szkriptnyelv text processing, adat kiterjesztés, tagolt adatok automatizált soronkénti feldolgozása a forrásállományt soronként beolvassa
Algoritmizálás, adatmodellezés tanítása 6. előadás
Algoritmizálás, adatmodellezés tanítása 6. előadás Tesztelési módszerek statikus tesztelés kódellenőrzés szintaktikus ellenőrzés szemantikus ellenőrzés dinamikus tesztelés fekete doboz módszerek fehér
Eljárások, függvények
Eljárások, függvények Tartalomjegyzék Az alprogramok...2 Kérdések, feladatok...2 Kérdések, feladatok...3 Eljárások...3 Kérdések, feladatok...4 Érték és cím szerinti paraméterátadás...5 Kérdések, feladatok...6
Szekvenciális hálózatok és automaták
Szekvenciális hálózatok a kombinációs hálózatokból jöhetnek létre tárolási tulajdonságok hozzáadásával. A tárolás megvalósítása történhet a kapcsolás logikáját képező kombinációs hálózat kimeneteinek visszacsatolásával
Programozás BMEKOKAA146. Dr. Bécsi Tamás 3. előadás
Programozás BMEKOKAA146 Dr. Bécsi Tamás 3. előadás Vezérlési szerkezetek Elágazás Gyakran előfordul, hogy meg kell vizsgálnunk egy állítást, és attól függően, hogy igaz vagy hamis, a programnak más-más
... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak.
Párhuzamos programok Legyen S parbegin S 1... S n parend; program. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak. Folyamat
Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás 3. előadás
Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606 Dr. Bécsi Tamás 3. előadás A Math osztály (System.Math) Metódus Művelet Math.Sin(x) sin(x), ahol az x szög értékét radiánban
file./script.sh > Bourne-Again shell script text executable << tartalmat néz >>
I. Alapok Interaktív shell-ben vagy shell-scriptben megadott karaktersorozat feldolgozásakor az első lépés a szavakra tördelés. A szavakra tördelés a következő metakarakterek mentén zajlik: & ; ( ) < >
SZERZŐ: Kiss Róbert. Oldal1
A LOGO MindStorms NXT/EV3 robot grafikus képernyőjét használva különböző ábrákat tudunk rajzolni. A képek létrehozásához koordináta rendszerben adott alakzatok (kör, téglalap, szakasz, pont) meghatározó
C programozás. { Márton Gyöngyvér, 2009 } { Sapientia, Erdélyi Magyar Tudományegyetem }
C programozás Márton Gyöngyvér, 2009 Sapientia, Erdélyi Magyar Tudományegyetem http://www.ms.sapientia.ro/~mgyongyi 1 Ciklusok for (ismétlés) while do while 2 for utasítás szöveg 10-szeri kiíratása: int
Mintavételes szabályozás mikrovezérlő segítségével
Automatizálási Tanszék Mintavételes szabályozás mikrovezérlő segítségével Budai Tamás budai.tamas@sze.hu http://maxwell.sze.hu/~budait Tartalom Mikrovezérlőkről röviden Programozási alapismeretek ismétlés
2. Visszalépéses stratégia
2. Visszalépéses stratégia A visszalépéses keres rendszer olyan KR, amely globális munkaterülete: út a startcsúcsból az aktuális csúcsba (ezen kívül a még ki nem próbált élek nyilvántartása) keresés szabályai:
Branch-and-Bound. 1. Az egészértéketű programozás. a korlátozás és szétválasztás módszere Bevezető Definíció. 11.
11. gyakorlat Branch-and-Bound a korlátozás és szétválasztás módszere 1. Az egészértéketű programozás 1.1. Bevezető Bizonyos feladatok modellezése kapcsán előfordulhat olyan eset, hogy a megoldás során
SZERZŐ: Kiss Róbert. Oldal1
A LEGO MindStorms NXT/EV3 robot grafikus képernyőjét és programozási eszközeit használva különböző dinamikus (időben változó) ábrákat tudunk rajzolni. A képek létrehozásához koordináta rendszerben adott
AZ ALGORITMUS. az eredményt szolgáltatja
ALGORITMUSOK AZ ALGORITMUS Az algoritmus problémamegoldásra szolgáló elemi lépések olyan sorozata, amely a következő jellemzőkkel bír: Véges: véges számú lépés után befejeződik, és eredményt szolgáltat
Java és web programozás
Budapesti M szaki Egyetem 2013. november 20. 10. El adás SQLite SQLite: Adatbázis kezel rendszer SQL standardokat nagyrészt követi Nagyon elterjedt, pl böngész kben is használt Nehéz olyan programnyelvet
Összetett programozási tételek Rendezések Keresések PT egymásra építése. 10. előadás. Programozás-elmélet. Programozás-elmélet 10.
Összetett programozási tételek Sorozathoz sorozatot relő feladatokkal foglalkozunk. A bemenő sorozatot le kell másolni, s közben az elemekre vonatkozó átalakításokat lehet végezni rajta: Input : n N 0,
A félév során előkerülő témakörök
A félév során előkerülő témakörök rekurzív algoritmusok rendező algoritmusok alapvető adattípusok, adatszerkezetek, és kapcsolódó algoritmusok dinamikus programozás mohó algoritmusok gráf algoritmusok
Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK. Sapientia EMTE
Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK Sapientia EMTE 2015-16 1 Felülnézet 1 Feltételes fordítás #if, #else, #elif, #endif, #ifdef, #ifndef stb. Felülnézet 2 #include: hatására a preprocesszor
Véges állapotú gépek (FSM) tervezése
Véges állapotú gépek (FSM) tervezése F1. A 2. gyakorlaton foglalkoztunk a 3-mal vagy 5-tel osztható 4 bites számok felismerésével. Abban a feladatban a bemenet bitpárhuzamosan, azaz egy időben minden adatbit
OpenCL alapú eszközök verifikációja és validációja a gyakorlatban
OpenCL alapú eszközök verifikációja és validációja a gyakorlatban Fekete Tamás 2015. December 3. Szoftver verifikáció és validáció tantárgy Áttekintés Miért és mennyire fontos a megfelelő validáció és
Szkriptnyelvek. 1. UNIX shell
Szkriptnyelvek 1. UNIX shell Szkriptek futtatása Parancsértelmez ő shell script neve paraméterek shell script neve paraméterek Ebben az esetben a szkript tartalmazza a parancsértelmezőt: #!/bin/bash Szkriptek
Assembly Utasítások, programok. Iványi Péter
Assembly Utasítások, programok Iványi Péter Assembly programozás Egyszerű logikán alapul Egy utasítás CSAK egy dolgot csinál Magas szintű nyelven: x = 5 * z + y; /* 3 darab művelet */ Assembly: Szorozzuk
Delphi programozás I.
Delphi programozás I. Konzol alkalmazások készítése Delphiben A Delphi konzol alkalmazása (console application) olyan 32 bites program, amely nem grafikus felületen, hanem egy szöveges konzol ablakban
7. Laboratóriumi gyakorlat: Vezérlési szerkezetek II.
7. Laboratóriumi gyakorlat: Vezérlési szerkezetek II. A gyakorlat célja: 1. A shell vezérlő szerkezetei használatának gyakorlása. A használt vezérlő szerkezetek: if/else/fi, for, while while, select, case,
SZÁMÍTÓGÉPI GRAFIKA VÁGÁS
SZÁMÍTÓGÉPI GRAFIKA VÁGÁS FELADAT: Ha az alakzat nagyobb, mint a képtartomány, amelyben megjelenítendő, akkor a kívül eső részeket el kell hagyni, azaz az alakzatról le kell vágni, röviden szólva: az alakzatot
KeyLock-2V Digitális kódzár 2 kimenettel
KeyLock-2V Digitális kódzár 2 kimenettel HU Felhasználói és programozói leírás A kézikönyv tartalmára és a benne leírt berendezésre vonatkozóan a fejlesztő és gyártó fenntartja a változtatás jogát. A gyártó
Operációs Rendszerek II. labor. 2. alkalom
Operációs Rendszerek II. labor 2. alkalom Mai témák (e)grep Shell programozás (részletesebben, példákon keresztül) grep Alapvető működés: mintákat keres a bemeneti csatorna (STDIN vagy fájl) soraiban,
A PROGRAMOZÁS ALAPJAI 3. Készítette: Vénné Meskó Katalin
1 A PROGRAMOZÁS ALAPJAI 3 Készítette: Vénné Meskó Katalin Információk 2 Elérhetőség meskokatalin@tfkkefohu Fogadóóra: szerda 10:45-11:30 Számonkérés Időpontok Dec 19 9:00, Jan 05 9:00, Jan 18 9:00 egy
Online algoritmusok. Algoritmusok és bonyolultságuk. Horváth Bálint március 30. Horváth Bálint Online algoritmusok március 30.
Online algoritmusok Algoritmusok és bonyolultságuk Horváth Bálint 2018. március 30. Horváth Bálint Online algoritmusok 2018. március 30. 1 / 28 Motiváció Gyakran el fordul, hogy a bemenetet csak részenként
Tartalom Tervezési egység felépítése Utasítások csoportosítása Értékadás... 38
Bevezetés... 11 1. A VHDL mint rendszertervező eszköz... 13 1.1. A gépi tervezés... 13 1.2. A VHDL általános jellemzése... 14 1.3. Tervezési eljárás VHDL-lel... 15 2. A VHDL nyelv alapszabályai... 19 2.1.
Informatika tanítási módszerek
Informatika tanítási módszerek Programozás tanítási módszerek módszeres, algoritmusorientált; adatorientált; specifikációorientált; feladattípus-orientált; nyelvorientált; utasításorientált; matematikaorientált;
Specifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.
Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt kimeneti adatot
Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar
Algoritmizálás Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 0.1. Az algoritmikus tudás szintjei Ismeri (a megoldó algoritmust) Érti Le tudja pontosan
Algoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás
Algoritmusok Tervezése 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás Mi az algoritmus? Lépések sorozata egy feladat elvégzéséhez (legáltalánosabban) Informálisan algoritmusnak nevezünk bármilyen jól definiált
Pénzügyi algoritmusok
Pénzügyi algoritmusok A C++ programozás alapjai Tömbök (3. rész) Konstansok Kivételkezelés Tömbök 3. Többdimenziós tömbök Többdimenziós tömbök int a; Többdimenziós tömbök int a[5]; Többdimenziós tömbök
KeyLock-23 Digitális kódzár 2 kimenettel, 3 bemenettel
KeyLock-23 Digitális kódzár 2 kimenettel, 3 bemenettel HU Felhasználói és programozói leírás A kézikönyv tartalmára és a benne leírt berendezésre vonatkozóan a fejlesztő és gyártó fenntartja a változtatás
Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1
Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Készítette: Gipsz Jakab Neptun-azonosító: ABC123 E-mail: gipszjakab@seholse.hu Kurzuskód: IT-13AAT1EG 1 A fenti
Folyamatirányítás labor 4. mérés Gyártósori szállítószalag modell irányítása Modicon M340 PLC-vel. Feladat leírás
Folyamatirányítás labor 4. mérés Gyártósori szállítószalag modell irányítása Modicon M340 PLC-vel Feladat leírás A mérési feladat a tanszéki laborban található, az alábbi ábrán felülnézetbl látható, gyártósori
TM-73733 Szervó vezérlő és dekóder
TM-73733 Szervó vezérlő és dekóder Használati útmutató 2011 BioDigit Ltd. Minden jog fenntartva. A dokumentum sokszorosítása, tartalmának közzététele bármilyen formában, beleértve az elektronikai és mechanikai
Algoritmusok tervezése
Hova fordulhatok segítségért? Az amatrcsillagászat egy szép tevékenység, de gyakran nagyon nehéz is lehet. Ilyenkor jöhet jól a többi amatrcsillagász segítsége. Az amatrök különböz egyesületeket, klubokat,
Objektumorientált Programozás III.
Objektumorientált Programozás III. Vezérlési szerkezetek ismétlés Matematikai lehetőségek Feladatok 1 Hallgatói Tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő
Bevezetés a C++ programozásba
Bevezetés a C++ programozásba A program fogalma: A program nem más, mint számítógép által végrehajtható utasítások sorozata. A számítógépes programokat különféle programnyelveken írhatjuk. Ilyen nyelvek
end function Az A vektorban elõforduló legnagyobb és legkisebb értékek indexeinek különbségét.. (1.5 pont) Ha üres a vektor, akkor 0-t..
A Név: l 2014.04.09 Neptun kód: Gyakorlat vezető: HG BP MN l 1. Adott egy (12 nem nulla értékû elemmel rendelkezõ) 6x7 méretû ritka mátrix hiányos 4+2 soros reprezentációja. SOR: 1 1 2 2 2 3 3 4 4 5 6
Dinamikus geometriai programok
2011. február 19. Eszköz és médium (fotó: http://sliderulemuseum.com) ugyanez egyben: Enter Reform mozgalmak a formális matematika megalapozását az életkjori sajátosságoknak megfelelő tárgyi tevékenységnek
A matematikai feladatok és megoldások konvenciói
A matematikai feladatok és megoldások konvenciói Kozárné Fazekas Anna Kántor Sándor Matematika és Informatika Didaktikai Konferencia - Szatmárnémeti 2011. január 28-30. Konvenciók Mindenki által elfogadott
Fordítás Kódoptimalizálás
Fordítás Kódoptimalizálás Kód visszafejtés. Izsó Tamás 2016. október 20. Izsó Tamás Fordítás Kódoptimalizálás / 1 Aktív változók Angol irodalomban a Live Variables kifejezést használják, míg az azt felhasználó
Megoldások a mintavizsga kérdések a VIMIAC04 tárgy ellenőrzési technikák részéhez kapcsolódóan (2017. május)
Megoldások a mintavizsga kérdések a VIMIAC04 tárgy ellenőrzési technikák részéhez kapcsolódóan (2017. május) Teszt kérdések 1. Melyik állítás igaz a folytonos integrációval (CI) kapcsolatban? a. Folytonos
Rendszer szekvencia diagram
Rendszer szekvencia diagram Célkitűzések A rendszer események azonosítása. Rendszer szekvencia diagram készítése az eseményekre. 2 1.Iteráció Az első igazi fejlesztési iteráció. A projekt kezdeti szakaszában
Értékesítések (összes, geográfiai -, ügyfelenkénti-, termékenkénti megoszlás)
Saját vállalkozás Értékesítések (összes, geográfiai -, ügyfelenkénti-, termékenkénti megoszlás) Piaci részesedés Haszonkulcs Marketing folyamatok Marketing szervezet Értékesítési/marketing kontrol adatok
Alkalmazott modul: Programozás. Programozási tételek, rendezések. Programozási tételek Algoritmusok és programozási tételek
Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás, rendezések 2015 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Algoritmusok és programozási tételek
5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás
Elemi programok Definíció Az S A A program elemi, ha a A : S(a) { a, a, a, a,..., a, b b a}. A definíció alapján könnyen látható, hogy egy elemi program tényleg program. Speciális elemi programok a kövekezők:
EMELT SZINT ÍRÁSKÉSZSÉG ÉRTÉKELÉSI ÚTMUTATÓ. Minta. Értékelési szempontok
A feladat I. Összefoglaló táblázat az értékelési szempontokról Értékelési szempontok A feladat teljesítése, a megadott szempontok követése Hangnem, az olvasóban keltett benyomás Szövegalkotás Szókincs,
Programozás alapjai (ANSI C)
Programozás alapjai (ANSI C) 1. Előadás vázlat A számítógép és programozása Dr. Baksáné dr. Varga Erika adjunktus Miskolci Egyetem, Informatikai Intézet Általános Informatikai Intézeti Tanszék www.iit.uni-miskolc.hu
Szakterület Modell Kapcsolatokkal bővítés
Szakterület Modell Kapcsolatokkal bővítés Cél Tárjuk fel a szakterület modelljén belüli kapcsolatokat. Különböztessük meg a szükséges és a jó ha van kapcsolatokat. 2 Bevezetés Keressük meg azokat a fogalom
LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL
LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL x 1-2x 2 6 -x 1-3x 3 = -7 x 1 - x 2-3x 3-2 3x 1-2x 2-2x 3 4 4x 1-2x 2 + x 3 max Alapfogalmak: feltételrendszer (narancs színnel jelölve), célfüggvény
Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r
Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. február 18. Minimum és maximumkeresés u s i n g n a m e s p a c e s t d ; i n t main ( ) { c o u t