This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
et:programming:algorithms [2012/05/21 09:39] – raivo.sell | et:programming:algorithms [2020/07/20 09:00] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | < | ||
====== Algoritmid ====== | ====== Algoritmid ====== | ||
Algoritm on samm-sammuline tegevusjuhis, | Algoritm on samm-sammuline tegevusjuhis, | ||
- | Lihtsustatud voodiagrammi elemendid: | ||
- | ===== Algus ===== | + | === Lihtsustatud voodiagrammi elemendid |
- | Ring. | + | {{ : |
- | {{: | + | * Ring - algoritmi |
+ | * Täidetud ring suurema ringi sees - algoritmi lõpp | ||
+ | * Ristkülik - tegevus, võib sisaldada ka koondatud ühetüübilisi tegevusi. | ||
+ | * Nool - liikumine, mille suund näitab algoritmi kulgemist - järgmine täitmisele minev samm. | ||
+ | * Romb - kontrollplokk, | ||
+ | * Trapets - andmevahetus. Robotite juures tähendab üldjuhul andurite või täiturite kasutamist. Soovi korral võib lihtsuse huvides selle objekti asendada tavalise tegevuse objektiga (ristkülik). | ||
- | ===== Lõpp ===== | + | === Näited |
- | Täidetud ring suurema ringi sees. | + | Voodiagrammide koostamiseks võib kasutada tavalist kontoritarkvara nn MS Word või MS Excel, OpenOffice/ |
- | {{: | + | Mikrokontrollerite tarkvara algoritmide voodiagrammidel üldjuhul programmi lõppu ei ole ja kogu tegevus on ühes lõputus tsüklis. Lõputu tsükli väljumistingimus ei saa kunagi tõeseks ja sellepärast on lubatud selle tähistamine rombiga, millel on ainult üks väljund. Tingimus ise on märgitud lihtsalt //true// või 1. Diagrammide koostamisel tuleks jälgida, et kui programmis on hargnemised, |
- | ===== Tegevus või avaldis ===== | + | Järgnevad näited illustreerivad plokkide kasutamist algoritmi juures. Esimene näide on lihtne ilma tsüklite ja sisendite kontrollita algoritm ühekordse tegevuse teostamiseks. |
- | Ristkülik, mille sisse on kirjutatud tegevuse nimetus või lühikirjeldus. Võib sisaldada ka koondatud ühetüübilisi tegevusi. | + | {{: |
- | + | ||
- | {{: | + | |
- | + | ||
- | ===== Liikumine ===== | + | |
- | + | ||
- | Nool, mille suund näitab algoritmi kulgemist - järgmine täitmisele minev samm. | + | |
- | + | ||
- | {{: | + | |
- | + | ||
- | ===== Kontrollplokk ===== | + | |
- | + | ||
- | Romb, mille sisse on kirjutatud loogiline võrdlustehe. Tegemist on algoritmi hargnemisega, | + | |
- | + | ||
- | {{: | + | |
- | + | ||
- | ===== Andmevahetus ===== | + | |
- | + | ||
- | Trapets, mille sisse on kirjutatud tegevuse nimi. Robotite juures tähendab üldjuhul kas andurite või täiturite kasutamist. Soovi korral võib lihtsuse huvides selle objekti asendada tavalise tegevuse objektiga (ristkülik). | + | |
- | + | ||
- | {{: | + | |
- | + | ||
- | ===== Näited ===== | + | |
- | + | ||
- | Voodiagrammide koostamiseks võib kasutada tavalist kontoritarkvara nn MS Word või MS Excel, OpenOffice/ | + | |
- | + | ||
- | Mikrokontrollerite tarkvara algoritmide voodiagrammidel üldjuhul programmi lõppu ei ole ja kogu tegevus on ühes lõputus tsüklis. Lõputu tsükli väljumistingimus ei saa kunagi tõeseks ja sellepärast on lubatud selle tähistamine rombiga, millel on ainult üks väljund. tingimus ise on märgitud lihtsalt true või 1. Diagrammide koostamisel tuleks jälgida, et kui programmis on hargnemised, | + | |
- | + | ||
- | Järgnevad näited illustreerivad plokkide kasutamist algoritmi juures. Esimene näide on lihtne ilma tsüklite ja sisendite kontrollita algoritm ühekordse tegevuse teostamiseks. | + | |
- | {{: | + | Järgnev diagramm kirjeldab süsteemi, mis kontrollib 1 m ala ja kui kontrollitavasse alasse siseneb objekt, käivitab kümneks sekundiks alarmi. Alarm töötab niikaua, kui objekt on kontrollitavast alast väljunud. |
- | Järgnev diagramm kirjeldab süsteemi, mis kontrollib 1 m ala ja kui kontrollitavasse alasse siseneb objekt, käivitab kümneks sekundiks alarmi. alarm töötab niikaua, kui objekt on kontrollitavast alast väljunud. | + | {{: |
- | {{: | + | /* Ise-enesest sellel true või 1 tingimusel pole mõtet diagrammil, sest see on implementatsiooni spetsiifiline tingimus. Näiteks goto lausega progedes poleks mingit tingimust tsüklis. |
+ | Juurde võiks lisada voo koondumise ploki (must paks joon), muidu jääb liitumine segaseks */ |