Algoritmul este compus pentru un anumit artist, poate fi reprezentat în diferite moduri: folosind o descriere grafică sau verbal, sub formă de tabele, formule, secvențe înregistrate pe limba algoritmică (limbaj de programare). Să descrierea grafică a algoritmului, numit o diagramă bloc. Această metodă are mai multe avantaje datorită vizibilității de a asigura, în special, „lizibilitate“ algoritm ridicat de cartografiere explicită și control în acesta.
Mai întâi de toate definesc conceptul de schemă bloc. Schema bloc - aceasta este un grafic direcționat indicând ordinea algoritmului de execuție de instruire; vârfuri ale acestui grafic poate fi una dintre cele trei tipuri (Fig. 2.2).
Figura 2.2. Trei tipuri de noduri
Fig. 2.2 show „functional» (a) superioară (având o intrare și o ieșire); „Predicat“ (b) Nodul care are o intrare și două ieșiri (în acest caz, funcția F transferă controlul uneia dintre ramurile în funcție de valoarea P (T, adică adevărat, însemnând „true», F, și anume . fals - «fals"), «combinarea» (a) vârful (vertex «fuziune») oferind transferul controlului de la unul din cele două intrări pentru timpii de ieșire T în loc să scrie «da» (sau semnul plus) în loc F- «. nu „(sau - semn).
Puteți construi trei diagrame bloc din diagramele bloc elementare ale datelor de valoare deosebită pentru practica algoritmică.
Aderența - cea mai importantă a structurilor. Aceasta înseamnă că acțiunile pot fi efectuate una după alta:
Fig. 2.3. Structura „aderenta“
Aceste dreptunghiuri pot reprezenta atât o singură comandă sau un set de operatori necesare pentru a efectua prelucrarea datelor complicate.
Ramificare - o structură care oferă posibilitatea de a alege între două alternative. Un test este efectuat, și apoi selectează una din căile.
Această structură este denumită în continuare „IF - THEN - ELSE“ sau „furculiță“. Fiecare dintre căile (sau APOI altceva) conduce la un punct de confluență comun, astfel încât execuția programului continuă, indiferent de calea pe care a fost selectat.
Fig. 2.4. Structura „ramificare“
Este posibil ca unul din rezultatele testelor face orice nu este necesar. În acest caz, doar o singură unitate de procesare poate fi utilizat:
Fig. 2.5. Structura „ramificare incompletă“
Ciclul (sau repetare) prevede executarea repetată a unui set de instrucțiuni de program. În cazul în care nu există cicluri, este puțin probabil ca ocupație de programare ar fi justificată: ciclurile ne permit să scrie șiruri lungi de operațiuni de prelucrare a datelor cu un număr mic de intrări duplicat.
Ciclul începe cu verificarea unei expresii logice. Dacă este adevărat, atunci „a“, apoi peste tot din nou, atâta timp cât expresia logică stochează valoarea „adevăr“. Odată ce devine falsă, punerea în aplicare a „a“ a operațiunilor este terminată și controlul este transferat la programul în continuare.
Fig. 2.6. Structura „în timp ce“ buclă
Fig. 2.7. Structura ciclului „înainte de“
Aceste structuri pot fi combinate una cu alta - atât prin organizarea investigațiilor lor, precum și prin crearea superpoziții (atașarea unei structuri la alta) - arbitrar variat pentru exprimarea algoritm logic pentru rezolvarea oricarei probleme.
O altă componentă importantă a unei abordări structurate pentru algoritmul de proiectare este modularitatea. Modulul - o secvență de operații legate în mod logic, conceput ca o parte separată a programului. Utilizarea modulelor are următoarele avantaje:
1) posibilitatea de a crea mai multe programatori de software;
2) simplitatea proiectării și modificările ulterioare ale programului;
3) Programul de simplificare de depanare - găsi și repara erorile în ea;
4) posibilitatea utilizării bibliotecii gata făcute din cele mai comune module.
Dar poate cea mai importantă realizare a unei abordări structurate pentru dezvoltarea de algoritmi este un programe de design de sus în jos, bazate pe ideea de niveluri de abstractizare, care sunt nivelurile de module în cadrul programului dezvoltat. In timpul fazei de proiectare construiește o diagramă ierarhie care prezintă aceste niveluri. sistem de ierarhie permite programatorilor să se concentreze pe stabilirea a ceea ce trebuie făcut în program, și doar apoi să decidă modul în care aceasta ar trebui să fie făcut. Când proiectul de sus în jos originale, sarcinile care urmează să fie împărțită într-un număr de subactivități subordona sarcina sa de conținut principal. Această partiție este numită detaliu sau descompunere.
În practică, în pregătirea diagrame bloc, este convenabil să se utilizeze alte simboluri grafice (unele sunt prezentate în Fig. 2.8).
Figura 2.8. Mai multe construcții suplimentare pentru organigramele imagine