3.1Slovesno-formulaic mod de a scrie algoritmul
Atunci când algoritmi de înregistrare verbale și stereotipă sunt scrise în text cu formule pentru elementele care determină secvența de acțiuni. Pentru a scrie algoritmii utilizați cu ajutorul limbajului standard, dar funcționează cu atenție din setul de cuvinte și fraze care nu permit repetarea, sinonime, cuvinte inutile. Acceptat anumite acord privind forma de intrare, comanda activități realizare, utilizarea simbolurilor matematice permise.
Având în vedere două numere întregi pozitive, găsiți divizorul lor cea mai mare comună (GCD).
Soluția la această problemă poate fi obținută prin împărțirea primului număr serial la un, apoi un număr mai mare minimal mai mic la reziduul obținut, primul reziduu și al doilea reziduu etc. atâta timp cât soldul nu se ajunge la zero. Ultimul într-un separator rând este rezultatul dorit.
Notăm N și M sunt întregi sursă, luând ca valori inițiale ale constantelor predeterminate. Reducem divizia sa scădere repetată. Apoi, algoritmul poate fi formulat după cum urmează:
1. set cele două numere;
2. în cazul în care numerele sunt egale, atunci luați oricare dintre ele ca răspuns și se va opri, în caz contrar se continua cu algoritmul;
3. Pentru a determina cea mai mare dintre numerele;
4. Puneți un număr mai mare de mai mari și mai mici diferența dintre numerele;
5. Algoritmul se repetă de la pasul 2;
3. Dacă M N, apoi mergeți la pasul 4, altfel mergeți la pasul 7 .;
.. 4. Dacă M> N, apoi preyti revendicării 5, în caz contrar mergeți la pasul 6;
5. M = M-N; mergeți la pasul 3 .;
6. N: = N-M; mergeți la pasul 3 .;
Metoda verbală și stereotipă nu este utilizat pe scară largă pentru următoarele motive:
astfel de descrieri nu sunt strict formalizate;
suferă înregistrări limbuție;
Permite interpretarea ambiguă a anumitor dispoziții.
3.2Grafichesky mod de a scrie algoritmi
Metoda de reprezentare grafică a algoritmilor este mai compact și mai clar în comparație cu verbal.
În reprezentarea grafică a algoritmului este reprezentat ca o serie de blocuri funcționale interconectate, fiecare dintre acestea corespunzând implementa una sau mai multe acțiuni. În interiorul blocului descrie pașii respectivi.
O astfel de reprezentare grafică se numește o diagramă sau schemă bloc.
Reprezentarea grafică a algoritmului este utilizat pe scară largă înainte de sarcini de programare datorită clarității sale, după cum percepția vizuală este, de obicei, facilitează procesul de scriere a unui program de ajustare sa pentru eventuale erori, ceea ce face sens de prelucrare a informațiilor.
Se poate întâlni chiar și următoarea propoziție: „exterior algoritm este o diagramă - un set de dreptunghiuri, și alte simboluri sunt înregistrate în acel calculat, care este introdus în mașină și care este eliberat pentru imprimare, precum și alte mijloace de informare de afișare“ Aici, forma de reprezentare a algoritmului este amestecat cu algoritmul în sine.
Principiul programării „top-down“, impune ca diagrama concretizată într-etape, iar fiecare bloc „va semna“ la operațiile elementare. Dar această abordare poate fi realizată în rezolvarea problemelor simple. În rezolvarea orice grave diagrama de flux de activitate „raspolzetsya“ într-o asemenea măsură, încât nu poate fi dintr-o privire.
Flowcharts util pentru explicarea funcționării algoritmului a terminat deja, iar blocurile sunt luate ca blocuri cu adevărat algoritm a cărui funcționare este auto-explicativ. Schema logică ar trebui să servească pentru a simplifica ilustrarea algoritmului și nu pentru complicații.
În rezolvarea problemelor pe computer, aveți nevoie nu numai abilitatea de a scrie algoritmi ca cunoaștere a metodelor de rezolvare problemei (precum și în matematică). Prin urmare, nu avem nevoie să învețe programare ca atare (și nu algoritmizare), precum și metode de rezolvare a problemelor matematice de pe computer. Sarcinile ar trebui să fie clasificate nu cu privire la tipurile de date, așa cum se face de obicei (matrice de sarcini pe variabile de caractere și așa mai departe. D.), iar la rubrica „dorit“.
Schema - un algoritm de reprezentare grafică completate elemente de înregistrare verbale. Fiecare punct al algoritmului este prezentată în schema anumită figură-bloc geometric (bloc de simboluri), precum și diferite tipuri de acțiuni efectuate de blocuri corespund diferitelor figuri geometrice reprezentate pe STAT.
GOST 19.701-90 (simbol de caractere corespunde Standardului Internațional ISO 5807-85) se aplică simbolurilor (simboluri) în algoritmi Scheme, programe, date și sisteme și seturi de reguli efectua scheme utilizate pentru a afișa diferite tipuri de sarcini de prelucrare a datelor și mijloacele de soluționare a acestora.
Tabelul 1 prezintă cele mai frecvent utilizate unități și explicații pentru ei sunt [1,2].
Simboluri grafice în schema sa alăturat linii de flux de date. Direcția principală a fluxului de informații merge de sus în jos și de la stânga la dreapta (sageata nu pot fi specificate în linii). În alte cazuri, shooter-ul este necesar pentru a utiliza. În ceea ce privește blocarea căii de curgere poate fi de intrare sau de ieșire. Numărul de linii de intrare pentru a bloca în mod esențial nelimitat. Linia de ieșire poate fi doar unul. blocuri logice excepție de concediu având cel puțin două linii de flux de ieșire, fiecare dintre care corespunde unuia dintre rezultatele posibile ale unităților logice de verificare a stării și de modificare.
Unitate de proces de calcul utilizat pentru a indica acțiunea sau succesiunea de acțiuni schimba valoarea de prezentare a datelor sau aspectul. Pentru a îmbunătăți claritatea, mai multe scheme de unități de prelucrare individuale pot fi combinate într-o singură unitate.
Tabelul 1. notație grafică convențională utilizată în algoritmii scheme de preparare
purtătoare de date de intrare-ieșire, care servește ca un disc magnetic,
Blocul logic este utilizat pentru a indica starea tranzițiilor de control. Fiecare „soluție“ bloc ar trebui să aibă condiție întrebare sau comparație, pe care o definește.
proces predeterminat bloc utilizat pentru a indica referințe la algoritmii auxiliari existenți în mod independent, sub forma mai multor module independente, pentru apeluri la rutine de bibliotecă.
Aparatul este utilizat pentru modificarea organizării structurilor ciclice. În interiorul blocului este înregistrată parametrul ciclu, pentru care valoarea specificată inițial, starea și creștere limita valorii parametrului pentru fiecare repetiție.
Cu un număr mare de linii intersectate, lungimea lor mare și în mod repetat schimba direcția circuitului devine malonaglyadnoy. În aceste cazuri, este permis să se rupă fluxul de linii de informații, introducerea pe ambele capete ale „conector“ discontinuitate caractere speciale (Fig. 1). În domeniul conectorilor, marcând o pauză de una și aceeași linie, a pus la fel de marcare un anumit caracter sau alfanumeric de coordonate bloc care se potrivește cu linia de curgere.
Fig. 1. Conector
Dacă circuitul se află pe mai multe coli, liniile de flux de tranziție de la o foaie la alta este desemnat prin simbolul „conectorul interstitial“ (Fig. 2). Astfel, pe foaia cu blocul - conectorul cuprinde un număr de sursă și coordonatele unității foaie-receptor și o unitate receptor foaie - numărul foaie și coordonează blocul - sursă.
Fig. 2. Conectorul interstițială
Numerele de bloc de serie pus în jos pe partea de sus a simbolului grafic pentru a rupe circuitul său (fig. 1 și 4).
Când algoritmi care efectuează circuite trebuie să reziste la o distanță minimă de 3 mm între liniile paralele de fire, 5 mm între simbolurile rămase. In blocuri dimensiuni acceptate: = 10, 15, 20 mm; = 1,5 (Figura 3). Dacă doriți să măriți dimensiunea schemei, este permis să crească până la un multiplu de cinci.
Schema este extrem de intuitiv și ușor de a prezenta algoritmul. În acest caz, nu există limitări privind gradul de detaliere în algoritmul de imagine. Alegerea depinde în întregime de programator. Dar trebuie să țină cont de faptul că schema prea general nu este de dorit datorită conținutului scăzut de informație, precum și o schemă foarte detaliat pierde în claritate. Mai ales pentru algoritmi mari și complexe, este recomandabil să se facă mai multe circuite de diferite niveluri de detaliere. Nivelul de conducere 1 arată întregul algoritm ca întreg. Schema logică 2 nivel dezvăluie blocuri de circuit individuale 1 nivel. Dacă este necesar, acesta poate fi formulat circuite niveluri ulterioare cu și mai mare detaliu. Acest sistem de rafinare în trepte a algoritmului este esența metodei de proiectare de sus în jos, care, la rândul său, este baza programării structurate.