NASSI-Shneiderman diagram (strukturogrammy)
elvégzésére laboratóriumi munka №1
A nappali tagozatos hallgatók szakon 010500 „Szoftver és adminisztrációs információs rendszerek”
Azt javasolta, a Department of „számítógép-tudomány és szoftver» BSTU (№4 jegyzőkönyv 15.02.10)
Ez HR hallgatók megismerkednek a koncepció az algoritmus és annak tulajdonságait és felvételi eljárások. Alakult készségek írásban algoritmusok formájában folyamatábrák és diagramok NASSI - Shneiderman.
Cél -, hogy megtanulják az alapvető technikákat írásban algoritmusok. Ehhez a hallgató köteles:
· Fedezze fel a koncepció az algoritmus és a művész;
· Tanulmányozza a szimbólumok folyamatábrák;
· Vizsgáljuk az egyezmények strukturogrammah;
Menetidő - 2 óra.
Algoritmus - a sorozat egyértelműen meghatározott intézkedések, a végrehajtás, amelynek eredményeként a megoldást a problémára. Az algoritmus nyelvén íródott a gép, van egy program a probléma megoldására.
Algoritmus - egy sor olyan intézkedést vezet sikerre a véges számú lépésben.
1. Felbontás - ez particionáló algoritmus számos egyedi végrehajtott művelet (lépés).
2. Determinancy (a latin determinált a -. Bizonyosság, pontosság) - minden olyan intézkedés az algoritmus kell szigorúan és egyértelműen meghatározott minden egyes esetben.
3. A véges - minden tevékenység külön, az algoritmus egészében képesnek kell lennie arra, hogy teljes.
4. Mass - algoritmus alkalmazható legyen különböző készletek bemeneti adatok.
5. Hatékonyság - a algoritmust vezet jelentős döntés.
A példaként algoritmus lehet:
· Útmutató a készülék;
· Az útvonal leírása, és mások.
Három fő típusa algoritmusok:
Lineáris algoritmus - egy algoritmus, ahol a következő lépéseket hajtjuk végre egyszer és szigorúan egymás után.
Egy példa algoritmus lehet lineáris a műveletek sorrendjét előállítására szendvicsek. Ebben az esetben az algoritmus a következő:
2. A vágott kenyeret;
3. terjedt vaj a kenyéren;
4. A vágott kolbász;
5. Helyezze a kolbász a kenyér;
Minden műveletet végezzen egymás után egy bizonyos sorrendben, és vezet a végeredményt.
Elágazás algoritmus - egy algoritmust, amely, a körülményektől függően teljesülnek vagy az egyik, vagy a másik szekvenciával.
A legegyszerűbb példa az elágazás algoritmus - ha az utcán eső, szükséges, hogy egy esernyő, vagy sem, hogy egy esernyő magával.
Ciklikus algoritmus - egy algoritmust, amely parancsokat ismétlődnek bizonyos számú alkalommal egymás után.
A legegyszerűbb példa a körbeforgó - miközben egy könyvet olvas meg kell ismételni ugyanazt a műveletet: olvasni az oldalt, perelistnut stb
Körmérkőzéses három típusba sorolhatók:
· A számláló ciklus - muvelet a cikluson belül egy bizonyos ideig;
· Egy gyűrű, amely előfeltétele - mielőtt minden új ciklust át egy bizonyos feltétel van jelölve, ha igaz, a végrehajtott műveletet a cikluson belül, ellenkező esetben a hurok kilép;
· Ciklus utófeltétel - elején a tevékenység végrehajtása zajlik a cikluson belül, és csak ezután a feltételes teszt.
Algoritmus Jelölése:
· Szóbeli vagy szóbeli (nyelv, formula-verbális);
· Pszeudo-kód (formal algoritmikus nyelvek);
o strukturogrammy (rendszer NASSI-Schneiderman);
o grafika (blokkvázlat).
Általában az első (szinten a gondolatok) leírt algoritmus szó, de ahogy közeledik a megvalósítás is egyre inkább formális alakja és összetétele által értett nyelven végrehajtója (pl gépi kód).
Példa slovestnosti felvétel algoritmus adott kapcsolatban korábban lineáris algoritmus. Egy példa egy algoritmus segítségével pszeudo-kód egy kódot minden program bármely programozási nyelv (C ++, Pascal, Basic, stb.)
Módszerei vázlatos belépési algoritmusokat tárgyaljuk részletesen.
Szabályai végrehajtásának meghatározott rendszerekhez a következő dokumentumokat:
· GOST 19,701-90. algoritmusok rendszerek, programok, adatok és rendszerek. Szimbólumok és végrehajtási szabályokat.
Ezek a dokumentumok szabályozzák módszerek felépítésének áramkörök és megjelenése elemét.
Alapelemei algoritmus rendszerek
Elem jelenít bemenet a külső közeg, vagy lépjünk ki belőle (a leggyakoribb használata - az elején és végén a program). Bent a feljegyzett a megfelelő lépéseket.
számítási egység (számítási egység)
Művészet egy vagy több műveletet, kezelése bármilyen adatot (Adatok módosítása értéket, a bemutató erejéig). Belül rögzített adatok közvetlenül műveletek magukat, mint például az értékadó operátor: a = 10 * b + c.
A logikai egység (feltételek blokk)
A szimbólum azt jelzi, a haladás, a folyamat, amely egy vagy több művelet, amely máshol van definiálva a programban (szubrutin modul). Bent a szimbólum van írva a neve a folyamat és a hozzá továbbított adatok. Például, a programozást - eljárás hívás vagy funkció.
adatok átalakítása, hogy alkalmas formában feldolgozó (input) vagy mutatja a feldolgozási eredményeket (kimenet). Ez a jel nem határozza meg az adathordozó (specifikus jeleket használjuk, hogy jelezze a tárolóeszköz-típusban tárolható).
A szimbólum két részből áll - illetve, az elején és végén a ciklus - az elvégzett műveletek a hurkon belül, közéjük behelyezett. Ami a ciklus és a növekmény van írva benne a jel elején vagy végén egy ciklus - attól függően, hogy milyen típusú szervezet a ciklus. Gyakran használják a szimbólum a feltételek a kép helyett ez a szimbólum a tömbvázlata a ciklus, megjelölve azt az oldatot, és az egyik kimeneti vonalak rövid fenti blokkdiagramon (megelőző ciklus műveletek).
Más áramköri elemek megtalálhatók a vonatkozó GOST (fent definiált).
Tekintsük a példát az építkezés egy folyamatábra egy komplett megoldást a másodfokú egyenlet. Kezdjük azzal, hogy írunk az algoritmus szóban:
5. származtatása az egyenlet a képernyőn;
6. Számítási képlet diszkrimináns;
7. Ha eljuttatni az üzenetet a hiánya a gyökerek és folytassa a 10. lépéssel, különben ugorjon a 8. lépésre;
8. Ha. az egyetlen gyökere az egyenlet kiszámításához a képlet. megjeleníteni és ugorjon a 10. lépésre Ellenkező esetben folytassa a 9. lépéssel.
9. Számítsuk ki a gyökerek a képletek
megjeleníti az eredményeket a képernyőn, folytassa a 10. lépéssel.
Az építkezés ezen elemek fogják használni folyamatábrák:
1. Az elején és végén -
2. A be- és kimenet -
A műveletsornak adott vezérlő a nyilak összekötő blokkok belül a grafikus elemek megfelelő parancs van írva.
A blokkvázlat ábrán látható. 1.
1. ábra. A folyamatábra számítási gyökerei a másodfokú egyenlet
Következő lenne másik módszer a felvétel egy grafikus algoritmus - a NASSI-Shneiderman diagram.
NASSI-Shneiderman diagram (strukturogrammy)
NASSI-Shneiderman diagram - egy grafikus módon mutatja strukturált algoritmusok és programok kifejlesztett 1972 amerikai diplomás Ben Shneiderman és Isaac NASSI.
NASSI-Shneiderman diagramok számos előnye van a blokk diagramok a fejlesztés strukturált algoritmusok és programok:
· A felvétel sokkal kompaktabb (elsősorban a hiányzó nyilak az elemek között).
· Garantált megfelelés elvei strukturált programozás figyelhető meg (a folyamatábrák véletlenül kap strukturálatlan algoritmust figyelmetlen).
· Rajzok NASSI - Shneiderman hasznos inkrementális részletesség probléma, hiszen ők is épülnek elve lépésről lépésre részletesen - eredetileg a diagram egy téglalapot (az eredeti probléma), akkor azt kell venni néhány irányítási struktúra, amelyben több téglalap (részfeladatok az eredeti probléma ), majd az ugyanazt a műveletet lehet tenni minden téglalap (részfeladat).