Az algoritmus végrehajtása egy adott végrehajtói döntéshez. Számítástechnika és információs technológia. Az algoritmusok leírásának módjai

Kulcsszavak:

  • algoritmus
  • az algoritmus tulajdonságait
    • diszkrétség
    • világosság
    • bizonyosság
    • hatékonyság
    • tömegjelleg
  • végrehajtó
  • előadói jellemzők
    • megoldandó feladatok köre
    • szerda
    • működési mód
    • parancsrendszer
  • az algoritmus formális végrehajtása

3.1.1. Algoritmus koncepció

Minden ember benne Mindennapi élet, tanulásban vagy munkahelyen, rengeteg, változó összetettségű problémát old meg. Az összetett problémák sok gondolkodást igényelnek a megoldás megtalálásához; Az ember gondolkodás nélkül, automatikusan old meg egyszerű és ismerős feladatokat. A legtöbb esetben az egyes problémák megoldása egyszerű szakaszokra (lépésekre) osztható. Sok ilyen feladathoz (telepítés szoftver, szekrény összeállítása, honlapkészítés, technikai eszköz üzemeltetése, repülőjegy vásárlás az interneten keresztül stb.) már kidolgoztak és kínáltak lépésről lépésre utasításokat, ami következetesen végrehajtva a kívánt eredményhez vezethet.

1. példa. A „Két szám számtani középértékének megkeresése” feladatot három lépésben oldjuk meg:

  • gondolj két számra;
  • vegye figyelembe két számot;
  • a kapott összeget elosztjuk 2-vel.

2. példa. A „Pénz befizetése a telefonszámlájára” feladat a következő lépésekre oszlik:

  • menjen a fizetési terminálhoz;
  • válassza ki a távközlési szolgáltatót;
  • írjon be egy telefonszámot;
  • ellenőrizze, hogy a beírt szám helyes-e;
  • helyezzen be egy bankjegyet a számlaelfogadóba;
  • várjon egy üzenetet a pénz jóváírásáról a számláján;
  • kap egy csekket.

3. példa. A „Rajzolj egy vicces sündisznót” probléma megoldásának szakaszait grafikusan mutatjuk be:

A számtani átlag megtalálása, a pénz befizetése a telefonszámlára és a sündisznó rajzolása első ránézésre teljesen más folyamat. De van egy közös jellemzőjük: mindegyik folyamatot rövid utasítások sorozata írja le, amelyek szigorú betartása lehetővé teszi a kívánt eredmény elérését. Az 1-3. példákban megadott utasítássorozatok a megfelelő problémák megoldására szolgáló algoritmusok. Ezen algoritmusok végrehajtója egy személy.

Az algoritmus lehet egy bizonyos számítási sorozat leírása (1. példa) vagy nem matematikai jellegű lépések (2-3. példa). De mindenesetre fejlesztése előtt a kezdeti feltételek(bemeneti adatok) és mit kell elérni (eredmény). Azt mondhatjuk, hogy az algoritmus egy probléma megoldásának lépéssorozatának leírása, amely a kiindulási adatoktól a kívánt eredményig vezet.

Általában az algoritmus működési diagramja a következőképpen ábrázolható (3.1. ábra):

Rizs. 3.1.
Az algoritmus általános sémája

Az algoritmusok az iskolában tanult összeadás, kivonás, szorzás és osztás szabályai, nyelvtani szabályok, geometriai konstrukciók szabályai stb.

Az „Algoritmussal végzett munka”, „Legnagyobb közös osztó”, „Legkisebb közös többszörös” (http://school-collection.edu.ru/) animációk segítenek emlékezni néhány orosz nyelv- és matematikaórákon tanult algoritmusra.

4. példa. Egyes algoritmusok arra a tényre vezetnek, hogy egy karakterláncból egy új láncot kapunk a következőképpen:

  1. A forrás karakterlánc hosszát (karakterben) kiszámítja a rendszer.
  2. Ha az eredeti lánc hossza páratlan, akkor az 1-es szám hozzáadódik a jobb oldali eredeti lánchoz, ellenkező esetben a lánc nem változik.
  3. A szimbólumok páronként felcserélődnek (az első a másodikkal, a harmadik a negyedikkel, az ötödik a hatodikkal stb.).
  4. A 2-es szám a kapott lánc jobb oldalán található.

A kapott lánc az algoritmus eredménye.

Tehát, ha a kezdeti lánc A#B volt, akkor az algoritmus eredménye az #A1B2 lánc lesz, ha pedig a kezdeti lánc ABC@, akkor az algoritmus eredménye a BA@B2 lánc lesz.

3.1.2. Algoritmus végrehajtó

Minden algoritmus egy adott előadó számára készült.

Vannak formális és informális előadók. A formális előadó mindig ugyanazt a parancsot ugyanúgy hajtja végre. Egy informális végrehajtó különböző módokon hajthat végre egy parancsot.

Tekintsük részletesebben a formális előadók készletét. A formális teljesítők rendkívül sokfélék, de mindegyikre a következő jellemzők adhatók meg: a megoldandó feladatok köre (cél), környezet, parancsrendszer és működési mód.

Megoldandó feladatok köre. Minden előadót egy bizonyos problémakör megoldására hoznak létre - szimbólumláncokat szerkesztenek, számításokat végeznek, rajzokat készítenek síkon stb.

Művészi környezet. Azt a területet, környezetet, körülményeket, amelyek között az előadó működik, általában az adott előadó környezetének nevezzük. Bármely algoritmus forrásadatai és eredményei mindig annak az előadónak a környezetéhez tartoznak, akinek az algoritmust szánják.

Végrehajtó parancsrendszer. Az előadónak adott utasítást egy külön befejezett művelet végrehajtására parancsnak nevezzük. Az összes végrehajtó által végrehajtható parancs halmaza alkotja ennek a végrehajtónak a parancsrendszerét (SKI). Az algoritmust egy adott előadó képességeinek figyelembevételével állítják össze, más szóval az azt végrehajtó előadó parancsrendszerében.

Előadói üzemmódok. A legtöbb előadó számára a közvetlen vezérlési módok ill programvezérlés. Az első esetben az előadó parancsokat vár egy személytől, és minden kapott parancsot azonnal végrehajt. A második esetben az előadó először egy teljes parancssort (programot) kap, majd ezeket a parancsokat végrehajtja automatikus üzemmód. Számos előadó csak a nevezett módok egyikében dolgozik.

Nézzünk példákat az előadókra.

5. példa. Előadó A teknős mozog a számítógép képernyőjén, nyomot hagyva egy vonal formájában. A Teknős parancsnoki rendszere két parancsból áll:

    Előre n (ahol n egész szám) - a Teknős n lépést a mozgás irányába mozdítja el - abba az irányba, amerre a feje és a teste néz;

    Jobb m (ahol m egy egész szám) - a Teknős mozgási iránya m fokkal az óramutató járásával megegyező irányban változik.

Felvétel Ismétlés k [<Команда1> <Команда2> ... <Командаn>] azt jelenti, hogy a zárójelben lévő parancssorozat k-szer megismétlődik.

Gondolja át, milyen ábra jelenik meg a képernyőn, miután a Teknős végrehajtja a következő algoritmust.

    Ismétlés 12 [jobbra 4 5 előre 20 jobbra 45]

6. példa. A végrehajtó parancsok rendszere A számítógép két parancsból áll, amelyekhez számok vannak hozzárendelve:

    1 - kivonni 1-et
    2 - szorozd meg 3-mal

Az első 1-gyel csökkenti a számot, a második háromszorosára növeli. Algoritmusok írásakor a rövidség kedvéért csak a parancsszámok vannak feltüntetve. Például a 21212-es algoritmus a következő parancssorozatot jelenti:

    szorozzuk meg 3-mal
    kivonni 1
    szorozzuk meg 3-mal
    kivonni 1
    szorozzuk meg 3-mal

Ezzel az algoritmussal az 1-es szám 15-re lesz konvertálva: ((1-3-1)-3-1)-3 = 15.

7. példa. A Performer Robot kockás mezőn működik, a szomszédos cellák között falak lehetnek. A robot a mező cellái mentén mozog, és a következő parancsokat tudja végrehajtani, amelyekhez számok vannak hozzárendelve:

    1 fel
    2 - Le
    3 - Helyes
    4 maradt

Minden egyes ilyen parancs végrehajtásakor a Robot a jelzett irányban egy szomszédos cellába mozog. Ha ebben az irányban fal van a cellák között, akkor a Robot megsemmisül. Mi történik a robottal, ha végrehajtja a 32323-as parancssort (itt a számok parancsszámokat jelölnek), és elindul az A cellából? Milyen parancssort kell végrehajtania a robotnak, hogy az A cellából B cellába lépjen anélkül, hogy összeesne, amikor a falnak ütközik?

Algoritmus kidolgozásakor:

  1. a feladatban megjelenő objektumok azonosítása, az objektumok tulajdonságai, az objektumok közötti kapcsolatok és lehetséges cselekvések tárgyakkal;
  2. meghatározzák a kiindulási adatokat és a kívánt eredményt;
  3. meghatározzák az előadó műveleteinek sorrendjét, biztosítva az átmenetet a kezdeti adatoktól az eredményig;
  4. a műveletek sorrendjét a végrehajtó parancsrendszerében szereplő parancsok segítségével rögzítjük.

Azt mondhatjuk, hogy az algoritmus az algoritmus végrehajtó tevékenységének modellje.

3.1.3. Algoritmus tulajdonságai

Nem minden utasítás, utasítássorozat vagy cselekvési terv tekinthető algoritmusnak. Minden algoritmus szükségszerűen rendelkezik a következő tulajdonságokkal: diszkrétség, érthetőség, bizonyosság, hatékonyság és tömegjelleg.

A diszkrétség tulajdonsága azt jelenti, hogy a probléma megoldásához vezető út külön lépésekre (akciókra) van felosztva. Minden művelethez tartozik egy megfelelő utasítás (parancs). A végrehajtó csak egy parancs végrehajtása után kezdheti meg a következő parancs végrehajtását.

Az érthetőség tulajdonsága azt jelenti, hogy az algoritmus csak az előadó parancsrendszerében szereplő parancsokból áll, azaz olyan parancsokból, amelyeket az előadó képes észlelni, és amelyek szerint el tudja végezni a szükséges műveleteket.

A bizonyosság tulajdonsága azt jelenti, hogy az algoritmus nem tartalmaz olyan parancsokat, amelyek jelentését az előadó félreérthetően értelmezheti; Elfogadhatatlanok azok a helyzetek, amikor a következő parancs végrehajtása után nem világos az előadó számára, hogy melyik parancsot hajtsa végre a következő lépésben.

A hatékonysági tulajdonság azt jelenti, hogy az algoritmusnak véges, esetleg nagyon nagy számú lépés után eredményt kell tudnia elérni. Ebben az esetben az eredményt nem csak a probléma megfogalmazása által meghatározott válasznak tekintjük, hanem azt a következtetést is, hogy a probléma bármilyen okból történő megoldásának folytatása lehetetlen.

A tömegtermelés tulajdonsága azt jelenti, hogy az algoritmusnak biztosítania kell annak alkalmazási lehetőségét, hogy egy adott feladatcsoportból bármilyen probléma megoldható legyen. Például a másodfokú egyenlet gyökereinek megkeresésére szolgáló algoritmus alkalmazható legyen bármely másodfokú egyenletre, az utcán való átkelés algoritmusa az utcán bárhol alkalmazható legyen, a gyógyszerkészítés algoritmusa bármely mennyiség elkészítésére alkalmazható legyen, stb.

8. példa. Tekintsük az n-nél nem nagyobb prímszámok megtalálásának egyik módszerét. Ezt a módszert „Eratoszthenész szitának” nevezik, az ókori görög tudós, Eratoszthenész után nevezték el, aki javasolta.

Egy adott n számnál nem nagyobb prímszámok megtalálásához Eratoszthenész módszerét követve, a következő lépéseket kell végrehajtania:

  1. írja fel az összes egész számot 2-től n-ig egy sorban (2, 3, 4, ..., n);
  2. keret 2 - az első prímszám;
  3. húzza ki a listából az utoljára talált prímszámmal osztható számokat;
  4. keresse meg az első jelöletlen számot (a jelölt számok áthúzott számok vagy keretbe zárt számok), és zárja be egy keretbe - ez egy másik prímszám lesz;
  5. ismételje meg a 3. és 4. lépést, amíg nem marad jelöletlen szám.

Vizuálisabb képet kaphat a prímszámok megtalálásának módszeréről az „Eratosthenes szita” (http://school-collection.edu.ru/) animáció segítségével.

A figyelembe vett műveletsor egy algoritmus, mivel megfelel a következő tulajdonságoknak:

  • diszkrétség - a prímszámok megtalálásának folyamata lépésekre oszlik;
  • érthetőség - minden parancs érthető egy 9. osztályos tanuló számára, aki ezt az algoritmust végzi;
  • bizonyosság - minden parancsot az előadó egyértelműen értelmez és végrehajt; utasítások vannak a parancsok végrehajtásának sorrendjére vonatkozóan;
  • hatékonyság - bizonyos számú lépés után az eredményt elérik;
  • tömegkarakter - a cselekvések sorrendje bármely természetes n-re alkalmazható.

Az algoritmus figyelembe vett tulajdonságai lehetővé teszik az algoritmus pontosabb definícióját.

3.1.4. Az emberi tevékenységek automatizálásának lehetősége

Az algoritmus kidolgozása általában munkaigényes feladat, amelyhez az embertől mély tudás, találékonyság és sok idő kell.

Egy probléma kész algoritmussal történő megoldásához csak az adott utasítások szigorú betartása szükséges az előadótól.

9. példa. A háromnál több tárgyat tartalmazó halomból két játékos felváltva vesz egy-két tárgyat. Az nyer, aki a következő lépése során fel tudja venni az összes megmaradt tárgyat.

Tekintsünk egy algoritmust, amelyet követve minden bizonnyal az első játékos biztosítja a győzelmet.

  1. Ha a halomban lévő tárgyak száma 3 többszöröse, akkor engedjen utat az ellenfélnek, ellenkező esetben indítsa el a játékot.
  2. A következő lépésnél minden alkalommal add hozzá az ellenfeled által elvitt tárgyak számát 3-hoz (a megmaradt tárgyak számának 3 többszörösének kell lennie).

Előfordulhat, hogy az előadó nem mélyed el annak értelmében, amit csinál, és nem okoskodik, hogy miért így és nem másként cselekszik, vagyis tud formálisan cselekedni. Az előadó formális cselekvőképessége lehetőséget ad az emberi tevékenység automatizálására. Ezért:

  1. a probléma megoldásának folyamata egyszerű műveletek sorozataként jelenik meg;
  2. létrejön egy gép ( automata készülék), amely képes ezeket a műveleteket az algoritmusban meghatározott sorrendben végrehajtani;
  3. az embert felszabadítják a rutintevékenységek alól, az algoritmus végrehajtását egy automata eszközre bízzák.

A legfontosabb

Előadó - valamilyen tárgy (személy, állat, műszaki eszköz), amely egy adott parancskészlet végrehajtására képes. A formális előadó mindig ugyanazt a parancsot ugyanúgy hajtja végre. Minden formális végrehajtónál megadható: a megoldandó feladatok köre, a környezet, a parancsrendszer és a működési mód.

Az algoritmus egy adott előadónak szánt műveletsorozat leírása, amely a kiindulási adatoktól a kívánt eredményig vezet, és amelynek jellemzői a diszkrétség, érthetőség, bizonyosság, hatékonyság és tömegjelleg.

Az előadó formális cselekvőképessége lehetőséget ad az emberi tevékenység automatizálására.

Kérdések és feladatok

  1. Mit nevezünk algoritmusnak?
  2. Keresse meg a „recept” szó szinonimáit.
  3. Mondjon példákat az iskolában tanult algoritmusokra!
  4. Ki lehet az algoritmus végrehajtója?
  5. Mondjon példát egy formális előadóra! Mondjon példát arra, amikor egy személy formális előadóként viselkedik.
  6. Milyen parancsokat kell végrehajtania egy robotnak: a) pénztáros az üzletben; b) házmester; c) biztonsági őr?
  7. Mi határozza meg a „számítógépes” előadó által végzett feladatok körét?
  8. Tekintsük előadónak szövegszerkesztő, elérhető a számítógépén. Ismertesse az előadó és környezete által megoldott feladatok körét!
  9. Mi az a csapat, az előadói parancsok rendszere?
  10. Sorolja fel az algoritmus főbb tulajdonságait!
  11. Mihez vezethet, ha egy algoritmusban nincs tulajdonság? Adj rá példákat.
  12. Miért fontos, hogy tudjunk formálisan végrehajtani egy algoritmust?
  13. A számsort a következő algoritmus szerint állítjuk össze: a sorozat első két számát 1-nek vesszük; A sorozat minden következő számát egyenlőnek kell tekinteni az előző két szám összegével. Írd le ennek a sorozatnak az első 10 tagját.
  14. Egyes algoritmusok a következőképpen kapnak egy új láncot egy karakterláncból. Először az eredeti karakterláncot írják le, utána az eredeti karakterláncot írják fordított sorrendben, majd az orosz ábécében azt a betűt írják, amely az eredeti lánc utolsó helyén lévő betű után következik. Ha az eredeti lánc utolsó helye a Z betű, akkor a következő betűként az A betűt írjuk. A kapott lánc az algoritmus eredménye. Például, ha az eredeti karakterlánc DOM volt, akkor az algoritmus eredménye a DOMMODN lánc lesz. A COM karakterlánc adott. Hány O betű lesz abban a szimbólumláncban, amelyet megkapunk, ha erre a láncra alkalmazzuk az algoritmust, majd újra alkalmazzuk az algoritmust a munka eredményére?
  15. Keresse meg az Eratoszthenész algoritmus lépéseinek animációját az interneten. Eratoszthenész algoritmusával keresse meg az 50-nél nem nagyobb prímszámokat.
  16. Mi lesz az eredménye az algoritmus Teknős általi végrehajtásának (lásd az 5. példát)?
      Ismétlés 8 [jobbra 45 előre 45]
  17. Írjon le egy algoritmust a Számológép végrehajtójához (6. példa), amely legfeljebb 5 parancsot tartalmazhat:
      a) megkapja a 3-as számtól a 16-os számot;
      b) kapja az 1-es számtól a 25-öt.
  18. A végrehajtó parancsok rendszere A konstruktor két parancsból áll, amelyekhez számok vannak hozzárendelve:
      1 – 2. hozzárendelése
      2 - oszd 2-vel

    Az első szerint a jobb oldali számhoz 2-t adunk, a második szerint a számot elosztjuk 2-vel. Hogyan alakul át a 8-as szám, ha az előadó végrehajtja a 22212-es algoritmust? Hozzon létre egy algoritmust ennek a végrehajtónak a parancsrendszerében, amely szerint az 1-es szám 16-osra lesz konvertálva (az algoritmus legfeljebb 5 parancsot tartalmazhat).

  19. Melyik cellában kell elhelyezkednie a Robot-előadónak (7. példa), hogy a 3241-es algoritmus végrehajtása után visszatérjen hozzá?

| § 2.1. Algoritmusok és végrehajtók

14. lecke
§ 2.1. Algoritmusok és végrehajtók

Kulcsszavak:

Algoritmus
az algoritmus tulajdonságai (diszkrétség; érthetőség; bizonyosság; hatékonyság; tömegjelleg)
végrehajtó
a végrehajtó jellemzői (megoldandó feladatok köre; környezet; működési mód; parancsrendszer)
az algoritmus formális végrehajtása

2.1.1. Algoritmus koncepció

Minden ember a mindennapi életben, a tanulásban vagy a munkában rengeteg, különböző összetettségű problémát old meg. Az összetett problémák sok gondolkodást igényelnek a megoldás megtalálásához; Az ember gondolkodás nélkül, automatikusan old meg egyszerű és ismerős feladatokat. A legtöbb esetben az egyes problémák megoldása egyszerű szakaszokra (lépésekre) osztható. Sok ilyen feladathoz (szoftver telepítése, szekrény összeállítása, weboldal létrehozása, műszaki eszköz üzemeltetése, repülőjegy vásárlása az interneten keresztül stb.) már kidolgozásra került és kínálunk lépésről lépésre szóló utasításokat, a szekvenciális amelyek megvalósítása a kívánt eredményhez vezethet.

1. példa A „Két szám számtani középértékének megkeresése” feladatot három lépésben oldjuk meg:

1) gondolj két számra;
2) adjunk hozzá két tervezett számot;
3) ossza el a kapott összeget 2-vel.

2. példa A „Pénz befizetése a telefonszámlájára” feladat a következő lépésekre oszlik:

1) menjen a fizetési terminálhoz;
2) válasszon távközlési szolgáltatót;
3) adjon meg egy telefonszámot;
4) ellenőrizze a beírt szám helyességét;
5) helyezzen be egy bankjegyet a számlaelfogadóba;
6) várjon egy üzenetet a pénz jóváírásáról a számláján;
7) kap egy csekket.

3. példa A „Rajzolj egy vicces sündisznót” probléma megoldásának szakaszait grafikusan mutatjuk be:


A számtani átlag megtalálása, a pénz befizetése a telefonszámlára és a sündisznó rajzolása első ránézésre teljesen más folyamat. De van egy közös jellemzőjük: mindegyik folyamatot rövid utasítások sorozata írja le, amelyek szigorú betartása lehetővé teszi a kívánt eredmény elérését. Az 1-3. példákban megadott utasítássorozatok a megfelelő problémák megoldására szolgáló algoritmusok. Ezen algoritmusok végrehajtója egy személy.

Az algoritmus lehet egy bizonyos számítási sorozat leírása (1. példa) vagy nem matematikai jellegű lépések (2-3. példa). De mindenesetre a kidolgozása előtt egyértelműen meg kell határozni a kiindulási feltételeket (kiindulási adatok) és azt, hogy mit kell elérni (eredmény). Azt mondhatjuk, hogy az algoritmus egy probléma megoldásának lépéssorozatának leírása, amely a kiindulási adatoktól a kívánt eredményig vezet.

Általában az algoritmus működési diagramja a következőképpen ábrázolható (2.1. ábra).

Rizs. 2.1. Az algoritmus általános sémája

Az algoritmusok az iskolában tanult számok összeadási, kivonási, szorzási és osztási szabályai, számos nyelvtani szabály, geometriai konstrukciók szabályai stb.

Az „Algoritmussal végzett munka” (193576), „Legnagyobb közös osztó” (170363), „Legkisebb közös többszörös” (170390) animációk segítenek megjegyezni néhány orosz nyelv- és matematikaórákon tanult algoritmust (http://sc.edu. ru /).

4. példa Egyes algoritmusok arra a tényre vezetnek, hogy egy karakterláncból egy új láncot kapunk a következőképpen:

1. A rendszer kiszámítja az eredeti karaktersorozat hosszát (karakterben).
2. Ha az eredeti lánc hossza páratlan, akkor az 1-es szám hozzáadódik a jobb oldali eredeti lánchoz, ellenkező esetben a lánc nem változik.
3. A szimbólumok páronként felcserélődnek (az első a másodikkal, a harmadik a negyedikkel, az ötödik a hatodikkal stb.).
4. A 2-es szám a kapott lánc jobb oldalán található.

A kapott lánc az algoritmus eredménye.

Tehát, ha a kezdeti lánc A#B volt, akkor az algoritmus eredménye az #A1B2 lánc lesz, ha pedig a kezdeti lánc ABC@, akkor az algoritmus eredménye a BA@B2 lánc lesz.

2.1.2. Algoritmus végrehajtó

Minden algoritmus egy adott előadó számára készült.

A végrehajtó egy objektum (személy, állat, technikai eszköz), amely képes végrehajtani egy bizonyos parancskészletet.

Megkülönböztetni formális és informális előadók. A formális előadó mindig ugyanazt a parancsot ugyanúgy hajtja végre. Egy informális végrehajtó különböző módokon hajthat végre egy parancsot.

Tekintsük részletesebben a formális előadók készletét. A formális teljesítők rendkívül sokfélék, de mindegyikre a következő jellemzők adhatók meg: a megoldandó feladatok köre (cél), környezet, parancsrendszer és működési mód.

Megoldandó feladatok köre. Minden előadót egy bizonyos problémakör megoldására hoznak létre - szimbólumláncokat szerkesztenek, számításokat végeznek, rajzokat készítenek síkon stb.

Művészi környezet. Azt a területet, környezetet, körülményeket, amelyek között az előadó működik, általában az adott előadó környezetének nevezzük. Bármely algoritmus forrásadatai és eredményei mindig annak az előadónak a környezetéhez tartoznak, akinek az algoritmust szánják.

Végrehajtó parancsrendszer. Az előadónak adott utasítást egy külön befejezett művelet végrehajtására parancsnak nevezzük. Az összes végrehajtó által végrehajtható parancs halmaza alkotja ennek a végrehajtónak a parancsrendszerét (SKI). Az algoritmust egy adott előadó képességeinek figyelembevételével állítják össze, más szóval az azt végrehajtó előadó parancsrendszerében.

Előadói üzemmódok. A legtöbb előadó számára közvetlen vezérlés és programvezérlési mód biztosított. Az első esetben az előadó parancsokat vár egy személytől, és minden kapott parancsot azonnal végrehajt. A második esetben az előadó először egy teljes parancssort (programot) kap, majd ezeket a parancsokat automatikusan végrehajtja. Számos előadó csak a nevezett módok egyikében dolgozik.

Nézzünk példákat az előadókra.

5. példa. Előadó A teknős mozog a számítógép képernyőjén, nyomot hagyva egy vonal formájában.

A Turtle parancsrendszer a következő parancsokból áll:

1. Előre n (ahol n egész szám) - a Teknős n lépést a mozgás irányába mozdítja el - abba az irányba, amerre a feje és a teste néz;
2. Jobb m (ahol m egy egész szám) - a Teknős mozgásának irányát t fokkal az óramutató járásával megegyezően megváltoztatja.
Rekord Ismételje meg a k [<Команда1> <Команда2> ... <Командаn>] azt jelenti, hogy a zárójelben lévő parancssorozat k-szer megismétlődik.

Gondolja át, milyen ábra jelenik meg a képernyőn, miután a Teknős végrehajtja a következő algoritmust.
Ismétlés 12 [jobbra 45 előre 20 jobbra 45]

6. példa. A végrehajtó parancsok rendszere A számítógép két parancsból áll, amelyekhez számok vannak hozzárendelve:

1 - kivonni 1-et
2 - szorozd meg 3-mal

Az első 1-gyel csökkenti a számot, a második háromszorosára növeli. Algoritmusok írásakor a rövidség kedvéért csak a parancsszámok vannak feltüntetve. Például a 21212-es algoritmus a következő parancssorozatot jelenti:

Szorozd meg 3-mal
kivonni 1
szorozzuk meg 3-mal
kivonni 1
szorozzuk meg 3-mal

Ezzel az algoritmussal az 1-es szám 15-re lesz konvertálva:

((1 3 - 1) 3 - 1) 3 = 15.

7. példa. A Performer Robot kockás mezőn működik, a szomszédos cellák között falak lehetnek. A robot a mező cellái mentén mozog, és a következő parancsokat tudja végrehajtani, amelyekhez számok vannak hozzárendelve:


1 fel
2 - lefelé
3 - jobbra
4 maradt

Minden egyes ilyen parancs végrehajtásakor a Robot a jelzett irányban egy szomszédos cellába mozog. Ha ebben az irányban fal van a cellák között, akkor a Robot megsemmisül.

Mi történik a robottal, ha végrehajtja a 32323-as parancssort (itt a számok parancsszámokat jelölnek), és elindul az A cellából? Milyen parancssort kell végrehajtania a robotnak, hogy az A cellából B cellába lépjen anélkül, hogy összeesne, amikor a falnak ütközik?

Algoritmus kidolgozásakor:

1) azonosítják a problémában megjelenő objektumokat, megállapítják az objektumok tulajdonságait, az objektumok közötti kapcsolatokat és az objektumokkal végzett lehetséges műveleteket;
2) meghatározzák a kiindulási adatokat és a kívánt eredményt;
3) meghatározzák az előadó műveleteinek sorrendjét, biztosítva az átmenetet a kezdeti adatoktól az eredményig;
4) a műveletek sorrendjét az előadó parancsrendszerében szereplő parancsok segítségével rögzítik.

Azt mondhatjuk, hogy az algoritmus az algoritmus végrehajtó tevékenységének modellje.

2.1.3. Algoritmus tulajdonságai

Nem minden utasítás, utasítássorozat vagy cselekvési terv tekinthető algoritmusnak. Minden algoritmus szükségszerűen rendelkezik a következő tulajdonságokkal: diszkrétség, érthetőség, bizonyosság, hatékonyság és tömegjelleg.

Diszkrét tulajdonság azt jelenti, hogy a probléma megoldásához vezető út külön lépésekre (akciókra) van felosztva. Minden művelethez tartozik egy megfelelő utasítás (parancs). A végrehajtó csak egy parancs végrehajtása után kezdheti meg a következő parancs végrehajtását.

Megérthetőség tulajdonság azt jelenti, hogy az algoritmus csak az előadó parancsrendszerében szereplő parancsokból áll, azaz olyan parancsokból, amelyeket az előadó képes észlelni, és amelyek szerint el tudja végezni a szükséges műveleteket.

A bizonyosság tulajdonsága azt jelenti, hogy az algoritmus nem tartalmaz olyan parancsokat, amelyek jelentését az előadó félreérthetően értelmezheti; Elfogadhatatlanok azok a helyzetek, amikor a következő parancs végrehajtása után az előadó számára nem világos, hogy melyik parancsot hajtsa végre. Ennek köszönhetően az algoritmus eredményét egyértelműen a kiindulási adathalmaz határozza meg: ha az algoritmust többször alkalmazzuk ugyanarra a kiindulási adathalmazra, akkor a kimenet mindig ugyanazt az eredményt adja.

Teljesítménytulajdonság azt jelenti, hogy az algoritmusnak véges, esetleg nagyon nagy számú lépés után eredményt kell adnia. Ebben az esetben az eredményt nem csak a probléma megfogalmazása által meghatározott válasznak tekintjük, hanem azt a következtetést is, hogy a probléma bármilyen okból történő megoldásának folytatása lehetetlen.

A tömegjelleg tulajdonsága azt jelenti, hogy az algoritmusnak biztosítania kell annak alkalmazási lehetőségét, hogy egy adott feladatcsoportból bármilyen probléma megoldható legyen. Például a másodfokú egyenlet gyökereinek megkeresésére szolgáló algoritmus alkalmazható legyen bármely másodfokú egyenletre, az utcán való átkelés algoritmusa az utcán bárhol alkalmazható legyen, a gyógyszerkészítés algoritmusa bármely mennyiség elkészítésére alkalmazható legyen, stb.

8. példa. Tekintsük az egyik módszert az összes olyan prímszám megtalálására, amelyek nem haladják meg valamely n természetes számot. Ezt a módszert Eratoszthenész szitájának nevezik az ókori görög tudós, Eratoszthenész (Kr. e. 3. század) után, aki javasolta.

Egy adott n számnál nem nagyobb prímszámok megtalálásához Eratoszthenész módszerét követve, a következő lépéseket kell végrehajtania:

1) írja fel egy sorba az összes természetes számot 2-től n-ig (2, 3, 4, ..., n);
2) 2. keret – az első prímszám;
3) húzza ki a listából az utoljára talált prímszámmal osztható számokat;
4) keresse meg az első jelöletlen számot (a jelölt számok áthúzott számok vagy keretbe zárt számok), és zárja be egy keretbe - ez egy másik prímszám;
5) ismételje meg a 3. és 4. lépést, amíg nem marad jelöletlen szám.

Vizuálisabb képet kaphat a prímszámok megtalálásának módszeréről a Digitális Oktatási Erőforrások Egységes Gyűjteményében közzétett „Eratosthenes szita” (180279) animáció segítségével.

A figyelembe vett műveletsor egy algoritmus, mivel megfelel a következő tulajdonságoknak:

diszkrétség- a prímszámok keresésének folyamata lépésekre oszlik;
érthetőség- minden parancs érthető egy 8. osztályos tanuló számára, aki ezt az algoritmust végzi;
bizonyosság- az egyes parancsokat az előadó egyértelműen értelmezi és végrehajtja; utasítások vannak a parancsok végrehajtásának sorrendjére vonatkozóan;
hatékonyság- bizonyos számú lépés után az eredményt elérjük;
tömegjelleg- a műveletsor bármely n természetes számra alkalmazható.

Az algoritmus figyelembe vett tulajdonságai lehetővé teszik az algoritmus pontosabb definícióját.

Az algoritmus egy adott előadónak szánt műveletsorozat leírása, amely a kiindulási adatoktól a kívánt eredményig vezet, és amelynek jellemzői a diszkrétség, érthetőség, bizonyosság, hatékonyság és tömegjelleg.

2.1.4. Az emberi tevékenységek automatizálásának lehetősége

Az algoritmus kidolgozása általában munkaigényes feladat, amelyhez az embertől mély tudás, találékonyság és sok idő kell.

Egy probléma kész algoritmussal történő megoldásához csak az adott utasítások szigorú betartása szükséges az előadótól.

9. példa. A háromnál több tárgyat tartalmazó halomból két játékos felváltva vesz egy-két tárgyat. Az nyer, aki a következő lépése során fel tudja venni az összes megmaradt tárgyat.

Tekintsünk egy algoritmust, amelyet követve minden bizonnyal az első játékos biztosítja a győzelmet.

1. Ha a halomban lévő tárgyak száma 3 többszöröse, akkor engedjen utat az ellenfélnek, ellenkező esetben kezdje a játékot 1 vagy 2 tárgy elvételével úgy, hogy a megmaradt tárgyak száma 3 többszöröse legyen.
2. Következő lépésednél minden alkalommal add hozzá az ellenfeled által elvitt tárgyak számát 3-hoz (a megmaradt tárgyak számának 3 többszörösének kell lennie).

Előfordulhat, hogy az előadó nem mélyed el annak értelmében, amit csinál, és nem okoskodik, hogy miért így és nem másként cselekszik, vagyis tud formálisan cselekedni. Az előadó formális cselekvőképessége lehetőséget ad az emberi tevékenység automatizálására. Ezért:

1) a probléma megoldásának folyamata egyszerű műveletek sorozataként jelenik meg;
2) olyan gépet (automatikus eszközt) hoznak létre, amely képes ezeket a műveleteket az algoritmusban meghatározott sorrendben végrehajtani;
3) egy személyt felszabadítanak a rutintevékenységek alól, az algoritmus végrehajtását egy automata eszközre bízzák.

A LEGFONTOSABB

Végrehajtó- valamilyen objektum (személy, állat, technikai eszköz), amely képes bizonyos parancskészlet végrehajtására.

A formális előadó mindig ugyanazt a parancsot ugyanúgy hajtja végre. Minden formális végrehajtóhoz megadhatja: a megoldandó feladatok köre, környezet, parancsrendszer és működési mód.

Algoritmus- egy konkrét előadónak szánt műveletsor leírása, amely a kiindulási adatoktól a kívánt eredményig vezet, amely diszkrétség, érthetőség, bizonyosság, hatékonyság és tömegjelleg tulajdonságokkal rendelkezik.

Az előadó színészi képessége formálisan lehetővé teszi az emberi tevékenységek automatizálását.

Kérdések és feladatok

1. Olvassa el a bekezdésben található prezentációs anyagokat elektronikus jelentkezés a tankönyvhöz. Az előadás kiegészíti-e a bekezdés szövegében foglalt információkat? Milyen diákat tudna hozzáadni az előadásához?

2. Mit nevezünk algoritmusnak?

3. Válasszon szinonimákat a „recept” szóhoz.

4. Mondjon példákat az iskolában tanult algoritmusokra!

5. Ki lehet az algoritmus végrehajtója?

6. Mondjon példát egy formális előadóra! Mondjon példát arra, amikor egy személy formális előadóként viselkedik.

7. Mi határozza meg a „számítógépes” végrehajtó által végzett feladatok körét?

8. Tekintse a számítógépén lévő szövegszerkesztőt végrehajtónak. Ismertesse az előadó és környezete által megoldott feladatok körét!

9. Mi a csapat, az előadói parancsok rendszere?

10. Milyen parancsokat kell végrehajtania egy robotnak a következő funkciókhoz:

a) pénztáros az üzletben;
b) házmester;
c) biztonsági őr?

11. Sorolja fel az algoritmus főbb tulajdonságait!

12. Mihez vezethet, ha egy algoritmusban nincs tulajdonság? Adj rá példákat.

13. Mi a jelentősége annak, hogy tudjunk formálisan végrehajtani egy algoritmust?

14. A számsort a következő algoritmus szerint állítjuk össze: a sorozat első két számát 1-nek vesszük; A sorozat minden következő számát egyenlőnek kell tekinteni az előző két szám összegével. Írd le ennek a sorozatnak az első 10 tagját. Tudja meg, mi ennek a sorozatnak a neve.

15. Egy bizonyos algoritmus a következőképpen kap egy új láncot egy karakterláncból. Először az eredeti karakterláncot írják le, utána az eredeti karakterláncot írják fordított sorrendben, majd az orosz ábécében azt a betűt írják, amely az eredeti lánc utolsó helyén lévő betű után következik. Ha az „I” betű az utolsó helyen van az eredeti láncban, akkor az „A” betű lesz a következő betű. A kapott lánc az algoritmus eredménye. Például, ha az eredeti karakterlánc „HOUSE” volt, akkor az algoritmus eredménye a „DOMMODN” lánc lesz. A „COM” karakterlánc adott. Hány „O” betű lesz a karakterláncban, amelyet akkor kapunk, ha erre a láncra alkalmazzuk az algoritmust, majd újra alkalmazzuk az algoritmust a munka eredményére?

16. Keresse meg az Eratoszthenész algoritmus lépéseinek animációját az interneten! Eratoszthenész algoritmusával keresse meg az 50-nél nem nagyobb prímszámokat.

17. Mi lesz az eredménye az algoritmus Teknős általi végrehajtásának (lásd az 5. példát)?

18. Írjon le egy algoritmust a Számológép végrehajtójához (lásd a 6. példát), amely legfeljebb 5 parancsot tartalmazhat:

a) megkapja a 3-as számtól a 16-os számot;
b) kapja az 1-es számtól a 25-öt.

19. Az előadói parancsok rendszere A konstruktor két parancsból áll, amelyekhez számok vannak hozzárendelve:

1 – 2. hozzárendelése
2 - oszd 2-vel

Az első szerint a jobb oldali számhoz 2-t adunk, a második szerint a számot elosztjuk 2-vel. Hogyan alakul át a 8-as szám, ha az előadó végrehajtja a 22212-es algoritmust? Hozzon létre egy algoritmust ennek a végrehajtónak a parancsrendszerében, amely szerint az 1-es szám 16-osra lesz konvertálva (az algoritmus legfeljebb 5 parancsot tartalmazhat).

20. Melyik cellában kell elhelyezkednie a Robot-előadónak (7. példa), hogy a 3241-es algoritmus végrehajtása után visszatérjen hozzá?

Ingyenes szoftver:

KuMir rendszer - Oktatási világok készlete (töltse le a program archívumát a webhelyről), vagy látogasson el a KuMir oldalra ((http://www.niisi.ru/kumir/)

Kérjük, függessze fel az AdBlockot ezen az oldalon.

Ebben a leckében néhány elméleti fogalmat fogunk megvizsgálni, amelyek formalizálják a programozás fogalmát. Egyúttal pontosabban megfogalmazzuk képzésének fő feladatát.

Kezdésként azt javaslom, játssz egy kicsit a következő gyermekjátékkal. Végezze el az első öt feladatot, menjen vissza, és folytassa a lecke olvasását.

1. ábra Képernyőkép a code.org-on lévő játékmezőről

Remélem minden sikerült neked. Most, ezzel a példával, leírunk néhány alapfogalmat:

  • végrehajtó;
  • előadói parancsok rendszere;
  • algoritmus.

A játékban egy piros madarat irányítunk. Az egyes szakaszok célja, hogy a madarat a disznóhoz juttatják. A madár végrehajthat bizonyos parancsokat, például: haladjon előre, forduljon balra, forduljon jobbra stb.

Azt a személyt, gépet vagy eszközt, amely képes végrehajtani bizonyos parancsokat, végrehajtónak nevezzük. Ebben a játékban nyilvánvalóan madár az előadó. Meghívásra kerül az a parancskészlet, amelyet az előadó megért és végrehajthat végrehajtó parancsok rendszere.

A parancsok sorozatát, amelyeket az előadónak végre kell hajtania egy probléma megoldásához, algoritmusnak nevezzük.

Több pontra kell összpontosítani.

A végrehajtó csak azokat a parancsokat tudja végrehajtani, amelyek a parancsrendszerében szerepelnek.

Ez például azt jelenti, hogy nem írhatod a madárelőadónak: „Menj a disznóhoz!” Le lehet írni pontosabban is, de nem lesz semmi, mert... az ilyen parancsok végrehajtója nem tudja.

Az elérhető parancsokat tetszőleges sorrendben leírhatja, amit helyesnek tart. Programozóként az Ön feladata, hogy egy nagy, összetett feladatot apró, egyedi lépésekre ossza fel, amelyek mindegyike érthető lesz az előadó számára. Az „oszd meg és uralkodj” elve ismét működik.

Az előadó pontosan azt teszi, amit az algoritmus mond neki.

A madár előadó nagyon bizakodó. Nem kérdőjelezi meg, amit a programban írsz. Ha például elfelejti megfordítani a madarat, az nekiütközik a falnak. Ezért mindent magának kell figyelemmel kísérnie.

Jövőbeli programjai gyakran nem úgy működnek, ahogyan azt szerette volna. Hibák mindenkivel előfordulnak. Itt fontos megérteni, hogy nem a számítógép a hülye, hanem Ön hibázott az algoritmusban. Ne legyél olyan, mint a rossz programozók, akiknél mindig a program a hibás mindenért.

Most térjünk át a szemléltető példáról a számítógépes valóságra. A számítógéphez programokat írunk, ami azt jelenti, hogy esetünkben a számítógép az előadó. A parancsrendszer a C nyelv szabványos függvényei és konstrukciói.

Mi a fő célja a programozás alapjainak tanításával? Sajátítsa el az algoritmikus gondolkodás készségét. Vagyis tanulja meg leírni a különböző problémák megoldását egy algoritmus formájában egy adott előadó (esetünkben egy számítógép) számára.

Tehát összefoglalva:

Számítógépes program– egy problémamegoldó algoritmus, programozási nyelven írva.

Az algoritmus a műveletek sorrendjének pontos leírása, amelyet az előadónak végre kell hajtania egy probléma megoldásához.

A végrehajtó egy személy vagy valamilyen eszköz, amely képes megérteni és végrehajtani egy bizonyos parancskészletet.

Az „algoritmus” szó a 9. századi arab matematikus al-Khwarizmi nevéből származik, aki az aritmetikai műveletek végrehajtásának szabályait fogalmazta meg.

Algoritmus– pontos és érthető utasítás az előadó számára a kiindulási adatoktól a kezdeti eredményig vezető végső parancssor végrehajtására.

Példák: napi rutin, főzési sorrend, utasítások stb.)

Algoritmus végrehajtó– ez az, aki végrehajtja az algoritmust (személy, állat, gép, számítógép).

Végrehajtó parancsrendszer- ez a teljes parancskészlet, amelyet az előadó tudja, hogyan kell végrehajtani (megért). Az algoritmus csak a végrehajtó parancsok rendszerében szereplő parancsokból építhető fel.

Például, előadó A robot tud parancsokat végrehajtani előre, hátra, balra, jobbra, festék. Egy fal által határolt és falakat tartalmazó sejtmezőn halad keresztül. A robot nem tud átmenni a falon.

Algoritmus tulajdonságai:

1.Teljesítmény (végtag)– a kiindulási adatokból véges számú lépésben eredményt kapni. (Például 2 szám összeadására szolgáló algoritmus végrehajtásakor az összeget kell megkapni).

2.Tömegjelleg– az algoritmus alkalmazásának lehetősége nagyszámú különböző forrásadatra. (Például tetszőleges 2 számot hozzáadhat az összeadási algoritmus ismeretében.)

3.Determinizmus(bizonyosság, pontosság) – minden parancsnak egyedileg kell meghatároznia az előadó cselekvését.

4.Megérthetőség– a parancsot a számítógép számára érthető nyelven kell megírni.

5.Diszkrétség– az algoritmus felosztása külön parancsokra.

Az algoritmus megírásának módjai:

1) Természetes nyelven – rögzítés külön parancsok formájában, az ember számára érthető nyelven.

2) Grafika – a folyamatábrák nyelvén, geometriai formák (ovális, téglalap, paralelogramma, rombusz) felhasználásával.

3) Algoritmikus nyelven - a programozás tanítására szolgáló algoritmusok írására szolgáló nyelv. A parancsokat oroszul írják.

4) Programozási nyelven - egy program. Programozási nyelvek: Basic, Pascal, C, Visual Basic.

B7.Alapvető algoritmikus struktúrák: követés, elágazás, ciklus; kép a blokkdiagramokon. A feladatok részfeladatokra bontása. Segéd algoritmusok.

Algoritmikus tervezés. Az algoritmusokon belül olyan lépéscsoportok különböztethetők meg, amelyek belső szerkezetükben különböznek egymástól - algoritmikus konstrukciók.

Alapvető algoritmikus konstrukciók a lépések lineáris sorozata (vagy a következő), elágazás és hurok.

Meghívásra kerül egy olyan algoritmus, amelyben a parancsokat egymás után hajtják végre lineáris algoritmus.

Így néz ki egy lineáris algoritmus blokkdiagram nyelven:

Példa: algoritmus a számítógép bekapcsolásához:

  1. Kapcsolja be a számítógépet (nyomja meg a gombot túlfeszültség védő).
  2. Kapcsolja be a monitort és a nyomtatót.
  3. Kattintson Bekapcsológomb tovább rendszer egysége.
  4. Várja meg a betöltést operációs rendszerés az Asztal megjelenése.
  5. Munkára.

Ebben az algoritmusban minden műveletet egymás után kell végrehajtani: nem lehet elkezdeni dolgozni, ha a tápellátás vagy a monitor nincs bekapcsolva.

Az algoritmikus struktúrába" elágazó" beleértve feltétel, a feltétel igazságától függően egyik vagy másik parancssorozat (sorozat) végrehajtásra kerül.

A feltétel egy állítás, amely lehet igaz vagy hamis. A feltételben két szám, két karakterlánc, két változó vagy karakterlánc-kifejezés összehasonlításra kerül egymással összehasonlító operátorok segítségével (>,<, =, >=, <=).

Felvétel algoritmikus nyelven: IfCondition Then Series 1 (If Feltétel igaz, akkor igaz 1. rész, Ha Feltétel hamis, akkor semmi sem kerül végrehajtásra). Példa: Ha ma vasárnap van, akkor nem kell iskolába menni. Az elágazás teljes formája

Algoritmikus struktúrákban ciklus többszörösen végrehajtott parancsokat tartalmaz. Ezt a parancssort hívják a hurok teste.

Kétféle ciklikus algoritmikus struktúra létezik:

  • ellentétes hurkok, amelyben a ciklus törzsét bizonyos számú alkalommal végrehajtják;
  • feltételes hurkok, amelyben a ciklus törzse mindaddig végrehajtódik, amíg a feltétel teljesül.

Hurok számlálóval– akkor használatos, ha előre ismert, hogy a huroktest hány ismétlését kell végrehajtani.

Algoritmus és tulajdonságai.

Algoritmus- világos és precíz utasítás az előadónak a kiindulási adatoktól a kívánt eredményig vezető végső parancssor végrehajtására.

Algoritmus végrehajtó- ez az az objektum vagy alany, amelynek vezérlésére az algoritmust tervezték.

Az előadói parancsrendszer (SCS) az előadó által végrehajtható parancsok teljes halmaza.

Az algoritmus tulajdonságai: érthetőség, pontosság, végesség.

Világosság: az algoritmus csak a végrehajtó SKI-jében szereplő parancsokból áll.

Pontosság: A vezérlőalgoritmus minden egyes parancsa meghatározza az előadó egyértelmű cselekvését.

Finomság (vagy teljesítmény): az algoritmus végrehajtásának véges számú lépésben kell eredményre vezetnie.

Előadói környezet: az a környezet, amelyben az előadó működik.

Az előadó bizonyos cselekvéssorozata mindig vonatkozik egyesekre forrásadatok. Például egy étel elkészítéséhez kulináris recept szerint szüksége van a megfelelő termékekre (adatokra). Egy matematikai probléma megoldásához (másodfokú egyenlet megoldásához) kezdeti numerikus adatokra (egyenletegyütthatókra) van szükség.

Teljes adatkészlet: a feladat megoldásához (a kívánt eredmény eléréséhez) szükséges és elégséges adatsor.

Algoritmusok írásának módszerei.

A leggyakoribb módszerek a következők: grafikus, szóbeliés a formában számítógépes programok.

Grafikus módszer bizonyos grafikus szimbólumok – blokkok – használatát foglalja magában.

Blokknév Blokkjelölés Tartalom
Folyamat
Adatfeldolgozás
Döntéshozatal
Egy logikai blokk egy bizonyos feltétel igazságának vagy hamisságának ellenőrzésére
Adatátvitel
Információ bevitele vagy kiadása
Indítsa el, hagyja abba
A program kezdete vagy vége
Módosítás
Ciklikus folyamat szervezése - ciklusfejléc

A tömbgyűjtemény alkotja az ún algoritmus folyamatábra.

Verbális felvétel Az algoritmusok elsősorban az emberi előadóra összpontosítanak, és lehetővé teszik az utasítások eltérő rögzítését, de a rögzítésnek meglehetősen pontosnak kell lennie.

Algoritmusok űrlapba írásakor programokat a számítógépek programozási nyelveket használnak - az utasítások kódolására szolgáló rendszereket és a használatukra vonatkozó szabályokat. Az algoritmusok program formájában történő írását nagyfokú formalizáltság jellemzi.

Algoritmusok a mennyiségekkel való munkavégzéshez. Alapvető algoritmikus struktúrák.

A mennyiség egyetlen információs objektum, amelynek neve, értéke és típusa van.

A mennyiségekkel való munka algoritmusainak végrehajtója lehet egy személy vagy egy speciális technikai eszköz, például számítógép. Egy ilyen előadónak rendelkeznie kell memória mennyiségek tárolására.

A mennyiségek lehetnek állandóak vagy változók.

Állandó érték (konstans)értéke nem változik az algoritmus végrehajtása során. Egy konstans jelölhető saját értékével (10, 3.5 számok) vagy szimbolikus névvel (szám ).

Változó érték megváltoztathatja az értéket az algoritmus végrehajtása során. A változókat mindig szimbolikus névvel jelöljük (X, A, R5 stb.).

Mennyiség típusa meghatározza az értékkészletet, amelyet egy érték végezhet, és az ezzel az értékkel végrehajtható műveletek halmazát. A mennyiségek alaptípusai: egész, valós, szimbolikus, logikai.

Kifejezés- egy rekord, amely meghatározza a mennyiségekre vonatkozó műveletek sorrendjét. Egy kifejezés konstansokat, változókat, műveleti jeleket és függvényeket tartalmazhat. Példa:

A + B; 2*X-Y; K + L - sin(X)

A hozzárendelési parancs egy végrehajtó parancs, amelynek eredményeként egy változó új értéket kap. Parancs formátum:

változó neve>:=kifejezés>

A hozzárendelési parancs végrehajtása a következő sorrendben történik: először kiszámítja, majd a kapott értéket hozzárendeli egy változóhoz.

Példa. Legyen az A változó értéke 6. Milyen értéket kap az A változó a parancs végrehajtása után: A:= 2 * A - 1?
Megoldás. Ha a 2*A - 1 kifejezést A=6-tal számítjuk ki, 11-et kapunk. Ez azt jelenti, hogy az A változó új értéke 11 lesz.

A következőkben azt feltételezzük a mennyiségekkel való munka algoritmusainak végrehajtója egy számítógép. Parancsokból bármilyen algoritmus felállítható feladatokat, bemenet, Kimenet, elágazóÉs ciklus.

Parancs bevitele- parancs, amellyel a változó értékeket beviteli eszközökön (például billentyűzeten) keresztül állítják be.

Példa: bemenet A - az A változó értékének bevitele a számítógép billentyűzetéről.

Kimeneti parancs: Olyan parancs, amely egy mennyiség értékét jeleníti meg a számítógép kimeneti eszközén (például monitoron).

Példa: következtetés X - az X változó értéke megjelenik a képernyőn.

Elágazás parancs- valamilyen feltételtől függően két útra osztja az algoritmust; akkor az algoritmus végrehajtása általános folytatásra megy. Az elágazás lehet teljes vagy hiányos. Az elágazás leírása blokkdiagramokban és algoritmikus nyelven:

Itt egy sorozat egy vagy több szekvenciális parancsot jelent; kv - elágazás vége.

Loop parancs biztosítja egy parancssorozat (huroktörzs) ismételt végrehajtását valamilyen feltétel alapján.

Hurok előfeltétellel- egy ciklus, amelynek végrehajtása addig ismétlődik, amíg a ciklusfeltétel igaz:

Hurok paraméterrel- a huroktörzs ismételt végrehajtása, miközben az egész paraméter végigfut az összes érték halmazán a kezdőtől (In) a végsőig (Ik):

Példa. Két egyszerű tört van megadva. Hozzon létre egy algoritmust egy tört megszerzésére, amely az elosztásuk eredménye.
Megoldás. Algebrai formában a probléma megoldása így néz ki:
a/b: c/d = a*d/b*c = m/n
A kiindulási adatok négy egész mennyiség: a, b, c, d. Az eredmény két m és n egész szám.

alg osztó törtek
ép a, b, c, d, m, n
indítsa be a bemenetet a, b, c, d
m:=a*d
n:=b*c
kimenet "Numerator=", m
kimenet "Nevező=", n
koi

Kérjük, vegye figyelembe, hogy a szöveg (bármilyen karaktersorozat) kiadásához azt idézőjelbe kell írni a parancsban következtetés.

  1. Efimova O., Morozov V., Ugrinovich N. Számítástechnikai tanfolyam a számítástechnika alapjaival. Oktatóanyag középiskolához. - M.: LLC "AST Kiadó"; ABF, 2000
  2. Számítástechnikai problémakönyv-műhely. 2 kötetben/Szerk. I. Semakina, E. Henner. - M.: Alapismeretek Laboratóriuma, 2001.
  3. Ugrinovich N. Számítástechnika és információs technológia. 10-11 évfolyam - M.: Alapismeretek Laboratóriuma, JSC "Moszkva Tankönyvek", 2001

Feladatok és tesztek az "Algoritmusok és végrehajtók" témában

  • Artist Management fogalmazó - Algoritmusok 6. osztály

    Leckék: 4 Feladatok: 9 Tesztek: 1

  • 2 Feladat: 9 Teszt: 1

Kedves tanuló!

Az "Algoritmusok és végrehajtók" témakör ismerete elsősorban a programozás továbbtanulásához szükséges. A QBasic programozási nyelvet választották a programozás tanulásának alapjául. Elvettük azt az elképzelést, hogy a Visual Basic-et vagy bármely más objektum-orientált programozási nyelvet beépítsük kurzusunkba, mivel ezt a megközelítést még nem alkalmazták széles körben az Orosz Föderáció legtöbb középiskolájában. Ezenkívül az objektum-orientált programozás a klasszikus Dos programozás elvein alapul.

Tanfolyamunkat az általános oktatási programra terveztük. Az informatikai felvételi vizsgákra való felkészüléskor meg kell ismerkednie az adott egyetemen a programozás tanulásának sajátosságaival. Egyes esetekben több téma alapos tanulmányozására van szükség, például "Tömbök". A programozási irodalom tanulmányozása során erre érdemes odafigyelni, talán érdemes lenne használni módszertani ajánlások a vizsgákra való felkészítésről, amelyeket jelenleg a legtöbb felsőoktatási intézményben közzétesznek.

Végezetül megjegyezzük, hogy a programozásban a „műrepülés” elérése csak állandó gyakorlással és konkrét alkalmazott problémák megoldásával lehetséges.




Top