Per creare qualsiasi programma, hai bisogno di basiccostruzioni algoritmiche. Di seguito è riportato il modo più semplice per risolvere i problemi. Può essere utilizzato, ad esempio, per lavorare con esempi dello stesso tipo. Ci sono anche altri tipi: branching e looping. Saranno discussi in questo articolo. Ma prima devi capire cos'è l'algoritmo nel suo complesso.
La parola "algoritmo" deriva dal latino algoritmi.Cosa significa? La parola autentica deriva dal nome di un matematico, la cui attività cadde nel IX secolo. Grazie al trattato al-Khwarizmi, l'umanità ha potuto conoscere il tipo base di costruzione algoritmica e, in generale, un concetto generale.
In precedenza, è stata adottata la forma di scrittura della parola: "algoritmo". Ora viene utilizzato solo in pochi casi.
L'algoritmo è un processo che significa cambiamentodati iniziali che si verificano sotto forma di passaggi discreti. Ogni persona incontra questo concetto nella vita, chiunque esso sia. Gli algoritmi possono essere chiamati preparazione di tè o cibo, moltiplicazione o addizione, risoluzione di equazioni, ecc. Tutti gli elettrodomestici, il cui processo di lavoro è automatizzato, funzionano grazie a passaggi chiari scritti nella memoria del processore. Tali algoritmi sono chiamati algoritmi domestici. Ci sono anche altri tipi. Consideriamoli.
Le principali costruzioni algoritmiche sono suddivise in diversi tipi, che saranno discussi in questa sottosezione. Quali sono?
In sostanza, l'algoritmo è preciso al più piccoloistruzioni dettagliate. Tuttavia, non tutti questi dati possono essere chiamati il concetto descritto. Per capire se un algoritmo è un'istruzione o meno, dovresti controllarlo per determinate proprietà.
Tutte le costruzioni algoritmiche di base devono avere azioni che "obbediscono" ad esse. Consideriamo questo problema in modo più dettagliato.
Se si traccia completamente il lavoro degli algoritmi e dei loro fileproprietà, puoi vedere che non è necessario comprenderne i componenti, corrispondono abbastanza chiaramente al piano. Si otterrà il risultato corretto, anche se si aderisce solo meccanicamente alle azioni necessarie. Da ciò possiamo concludere che a causa della mancanza di significato nella consapevolezza delle azioni, è del tutto possibile dare l'algoritmo all'implementazione di un computer. In altre parole, i dispositivi automatizzati richiedono questo processo.
Quali proprietà dovrebbero avere le costruzioni algoritmiche di base per il lavoro più accurato?
Se parliamo di metodi di scrittura di algoritmi, è necessario evidenziare quanto segue:
L'ultimo punto dovrebbe essere chiarito.Cos'è un diagramma a blocchi? È un algoritmo lineare o non lineare, i cui passaggi vengono scritti utilizzando blocchi speciali. Hanno la loro configurazione, scopo e funzione. Nel caso di una tale descrizione, l'algoritmo è scritto in schemi a blocchi, che sono interconnessi da linee. Devono inoltre registrare l'una o l'altra azione (passaggio).
Alcuni sostengono che gli algoritmi non abbiano 3tipo e 4. Costruzioni algoritmiche di base: lineare, ramificata, ciclica. Qual è il motivo di questa delusione non è chiaro. Tuttavia, per una soluzione semplice di problemi complessi, il computer utilizza gli algoritmi di questi tre gruppi piuttosto grandi. Consideriamoli.
Va notato che tutte le principali costruzioni algoritmiche (following, branching, loop) sono interconnesse tra loro, sebbene possano essere utilizzate separatamente.
Cosa serve per creare un ciclo?
I loop possono essere deterministici eiterativo. Il primo è una ripetizione di azioni con un numero noto di ripetizioni. Un ciclo iterativo è quello che si ripete un numero indefinito di volte finché una condizione non diventa vera o falsa.
Vale la pena ricordare che il principalel'algoritmo di base non si applica ai costrutti algoritmici. Come è lui? Questo concetto non è stato trovato nella letteratura moderna per molto tempo, ma questo non significa che non esista più. Considerando che possono verificarsi diversi rami o ripetizioni nella risoluzione dei problemi, è possibile evidenziare la seguente conclusione. Le costruzioni algoritmiche di base (lineare, ramificata, ciclica) sono fondamentali. In effetti, rappresentano l '"unità strutturale" di ciascuna cosiddetta istruzione.
Come già chiaro da quanto sopra, gli algoritmici sono lineari e non lineari. Consideriamo la prima opzione. Perché si chiama così? Tutto è estremamente semplice. Il fatto è che tutte le azioni che vengono riprodotte nell'algoritmo hanno un'esecuzione chiaramente sequenziale, tutti i passaggi vengono eseguiti rigorosamente uno dopo l'altro. Di norma, tali attività sono piccole e hanno un basso livello di complessità.
Un esempio di algoritmo lineare potrebbe essere il processo di preparazione del tè:
La programmazione di costrutti algoritmici di base è abbastanza difficile, ma quando si tratta di algoritmi lineari, è spesso molto facile implementarli.
Come fai a sapere se un algoritmo si sta ramificando?È sufficiente assicurarsi che sia possibile scegliere tra due o più opzioni di azione, a seconda che la condizione sia soddisfatta o meno. Ogni percorso è chiamato ramo.
La caratteristica principale di un algoritmo di ramificazione è l'esistenza di un ramo condizionale. Si verifica quando un'espressione viene verificata per vero o falso.
In genere, le espressioni logiche sono rappresentate dasegni "minore di", "maggiore di", "minore o uguale", "maggiore o uguale a", "uguale", "diverso da". A volte ci sono varianti in cui la condizione è correlata tra loro utilizzando i comandi and (and) and or (or).
Un esempio di un tale algoritmo può essere la soluzioneattività successiva: se l'espressione ((x + 3) / 1) è uguale a un numero positivo, visualizza il risultato sullo schermo, se negativo, informa l'utente dell'errore.
È abbastanza semplice utilizzare le costruzioni algoritmiche di base nella pratica. La ramificazione è uno dei metodi di soluzione più comuni.
Counter cycle: un ciclo che includeuna variabile che cambia il valore in incrementi. Il passo è impostato dall'utente o scritto dal programmatore durante la scrittura del software. La maggior parte delle lingue usa l'istruzione for per tale ciclo.
Per fare in modo che il programma visualizzi due righe 4 volte:
È necessario creare un ciclo deterministico. Che cosa sembra? Usiamo il linguaggio Pascal per una migliore percezione della struttura.
1. Per i: = da 1 a 2 fai:
- i è il contatore del ciclo, è lui che determina il numero di ripetizioni nel ciclo.
2. Inizia (le parentesi di operatore vengono aperte in modo che entrambe le frasi siano il corpo del ciclo e vengano ripetute insieme).
3. Writeln ("Come stai?"):
- la parola writeln indica l'output di una frase tra virgolette singole.
4. Writeln ("Va bene, grazie").
5. Fine.
6.i: = i + 1.
Come puoi vedere, è abbastanza facile e persino interessante usare le costruzioni algoritmiche di base. Gli algoritmi di base sono molto conosciuti, senza di essi è impossibile scrivere programmi.
Un ciclo con una postcondizione può ripetersiun numero indefinito di azioni senza inserire in esse parentesi di operatore o parole composte. Verrà sicuramente eseguito almeno una volta. Il ciclo viene eseguito mentre la condizione è falsa. Si ferma quando gli indicatori diventano corretti. L'algoritmo si basa su questo. I costrutti algoritmici di base di questo tipo operano a questo ritmo.
Per implementare questo ciclo, è necessaria la costruzioneRipeti A fino a B. Letteralmente, si traduce come "ripeti azioni finché la condizione è falsa". Di conseguenza, attraverso A, si esprime il processo di ripetizione stesso, attraverso B - dati, che di conseguenza dovrebbero assumere il valore corretto.
Un ciclo con una postcondizione è costruito in modo tale chein ogni caso viene eseguito almeno una volta. Tuttavia, ci sono casi in cui un ciclo è necessario in caso di una condizione particolare e, in sua assenza, la ripetizione non dovrebbe essere eseguita. In caso contrario, il risultato sarà errato. È qui che viene utilizzato un ciclo di precondizione. Per crearlo, è necessaria la costruzione "while A do B". Il primo comando si traduce letteralmente come "ciao". A - condizione e B - azioni che verranno ripetute. L'intera costruzione significa: "finché la condizione è vera, eseguire azioni".
Tutti i costrutti algoritmici di base funzionanosolo in alcuni casi. Come sono in un ciclo con una precondizione? Se è necessario ripetere più di un'azione, ma diverse contemporaneamente, è necessario utilizzare operatori composti o parentesi speciali. Il ciclo potrebbe non riuscire se, quando lo si accede, la condizione non è vera. Di conseguenza, le azioni verranno ripetute se è corretto.
L'algoritmo di supporto è utilizzato in altri fileelabora specificando solo il suo nome. Non appartiene alle principali costruzioni algoritmiche. Nei linguaggi di programmazione, un tale processo di azioni è chiamato subroutine. Per rendere più facile lavorare con il codice e successivamente risolvere più facilmente i problemi, ogni azione viene combinata in un blocco, che è un algoritmo ausiliario. A ciascuno di essi può essere assegnato un nome, che consente di fare riferimento ad esso ripetutamente.