Quasi tutto nel nostro mondo obbedisce in qualche modoLeggi e regolamenti. La scienza moderna non si ferma, grazie alla quale l'umanità conosce molte formule e algoritmi, in seguito ai quali è possibile calcolare e ricreare molte azioni e strutture create dalla natura, e dare vita alle idee inventate dall'uomo.
In questo articolo, analizzeremo i concetti di base dell'algoritmo.
L'algoritmo è un concetto apparso nel XII secolo.La stessa parola "algoritmo" deriva dall'interpretazione latina del nome del famoso matematico del Medio Oriente, Muhammad al Khorezmi, autore del libro "On Indian Account". Questo libro descrive come scrivere correttamente numeri naturali usando numeri arabi e fornisce una descrizione dell'algoritmo per le operazioni con una colonna su tali numeri.
Nel XII secolo, il libro "On Indian Account" fu tradotto in latino, e quindi apparve questa definizione.
La creazione di algoritmi richiede creatività,quindi, solo un essere vivente può creare un nuovo elenco di azioni sequenziali. Ma per l'esecuzione di istruzioni già esistenti, non è necessario avere immaginazione, anche una tecnica senz'anima può farcela.
Un ottimo esempio dell'esatta esecuzione di una determinata istruzione è un forno a microonde vuoto che continua a funzionare nonostante non ci sia cibo all'interno.
Un soggetto o un oggetto che non deveapprofondire l'essenza dell'algoritmo è chiamato esecutore formale. Una persona può anche diventare un esecutore formale, ma in caso di non redditività di questa o quell'azione, un esecutore pensante può fare tutto a modo suo. Pertanto, gli attori principali sono computer, forni a microonde, telefoni e altre apparecchiature. Il concetto di algoritmo in informatica è il più importante. Ogni algoritmo è compilato con l'aspettativa di un soggetto specifico, tenendo conto delle azioni consentite. Gli oggetti a cui il soggetto può applicare istruzioni costituiscono l'ambiente dell'esecutore.
Quasi tutto nel nostro mondo obbedisce in qualche modoLeggi e regolamenti. La scienza moderna non si ferma, grazie alla quale l'umanità conosce molte formule e algoritmi, in seguito ai quali è possibile calcolare e ricreare molte azioni e creazioni della natura e dare vita alle idee inventate dall'uomo. In questo articolo, analizzeremo i concetti di base dell'algoritmo.
La maggior parte delle azioni in cui eseguiamoper tutta la vita, richiedono il rispetto di una serie di regole. La qualità e il risultato dei compiti che gli vengono assegnati dipendono da quanto una persona ha ragione su cosa, come e in quale sequenza dovrebbe fare. Fin dall'infanzia, i genitori hanno cercato di sviluppare nel loro bambino un algoritmo di azioni di base, ad esempio: svegliarsi, rifare il letto, lavarsi e lavarsi i denti, fare esercizi, fare colazione, ecc., Anche l'elenco che una persona esegue per tutta la vita al mattino può essere considerato una sorta di algoritmo.
Un algoritmo è un concetto che denota una raccolta di istruzioni che una persona deve seguire per risolvere un problema specifico.
In generale, l'algoritmo ha molte definizioni, diversi scienziati lo caratterizzano in modi diversi.
Se un algoritmo applicato da una persona su base giornaliera haognuno è suo, e può cambiare a seconda dell'età e delle situazioni in cui si trova il performer, quindi l'insieme di azioni che devono essere eseguite per risolvere un problema matematico o per utilizzare la tecnologia è uguale per tutti e rimane sempre invariato.
Esiste un concetto diverso di algoritmo, anche i tipi di algoritmi differiscono, ad esempio per una persona che persegue un obiettivo e per la tecnologia.
Nella nostra era della tecnologia dell'informazione, le personeogni giorno eseguono una serie di istruzioni create prima di loro da altre persone, perché la tecnica richiede una serie di azioni quando si utilizza l'esecuzione esatta. Pertanto, il compito principale degli insegnanti nelle scuole è insegnare ai bambini come utilizzare gli algoritmi, afferrare e modificare rapidamente le regole esistenti in base alla situazione attuale. La struttura dell'algoritmo è uno di quei concetti che vengono insegnati nelle lezioni di matematica e informatica in ogni scuola.
1. Discrezione (sequenza di azioni individuali) - qualsiasi algoritmo dovrebbe essere rappresentato come una serie di azioni semplici, ognuna delle quali dovrebbe iniziare dopo il completamento di quella precedente.
2. Certezza - ogni azione dell'algoritmo dovrebbe essere così semplice e comprensibile che l'esecutore non ha domande e non ha alcuna libertà di azione.
3. Efficacia: la descrizione dell'algoritmo deve essere chiara e completa, in modo che dopo che tutte le istruzioni siano state completate, l'attività raggiunga la sua conclusione logica.
4.Massività: l'algoritmo dovrebbe essere applicabile a un'intera classe di problemi, che possono essere risolti solo modificando i numeri nell'algoritmo. Sebbene ci sia un'opinione secondo cui l'ultimo punto non si applica agli algoritmi, ma a tutti i metodi matematici in generale.
Spesso nelle scuole per dare ai bambini una migliore comprensionedescrizione di algoritmi, gli insegnanti citano come esempi la cottura da un libro di cucina, la preparazione di un medicinale su prescrizione o un processo di produzione del sapone basato su una master class. Tuttavia, tenendo conto della seconda proprietà dell'algoritmo, che dice che ogni punto dell'algoritmo deve essere così chiaro che assolutamente qualsiasi persona e persino una macchina possono eseguirlo, possiamo giungere alla conclusione che qualsiasi processo che richieda la manifestazione di almeno un po 'di immaginazione da parte dell'algoritmo non può essere nominato. E la cucina e l'artigianato richiedono determinate abilità e un'immaginazione ben sviluppata.
Esistono diversi tipi di algoritmi, ma ce ne sono tre principali.
In questo tipo, alcuni punti vengono ripetuti più volte. L'elenco delle azioni che devono essere ripetute per raggiungere l'obiettivo è chiamato il corpo dell'algoritmo.
L'iterazione del ciclo è l'esecuzione di tutti gli elementi inclusi nel corpo del ciclo.
Le parti di un ciclo che vengono eseguite continuamente un certo numero di volte sono chiamate ciclo a iterazione fissa.
Quelle parti del ciclo, la cui velocità di ripetizione dipende da una serie di condizioni, sono chiamate indeterminate.
Il tipo più semplice di loop è fisso.
Esistono due tipi di algoritmi di loop:
Loop con precondizione. In questo caso, il corpo del ciclo controlla le sue condizioni prima di essere eseguito.
Loop con postcondizione. In un ciclo con una postcondizione, la condizione viene verificata dopo la fine del ciclo.
Le istruzioni di tali schemi vengono eseguite una volta perla sequenza in cui vengono presentati. Ad esempio, il processo di rifare un letto o lavarsi i denti può essere considerato un algoritmo lineare. Anche di questo tipo sono esempi matematici, dove ci sono solo azioni di addizione e sottrazione.
In un tipo di ramificazione, ci sono diverse opzioni per le azioni, quella che verrà applicata dipende dalla condizione.
Esempio. Domanda: "Sta piovendo?" Opzioni di risposta: "Sì" o "No". Se "sì" - apri l'ombrello, se "no" - metti l'ombrello nella borsa.
L'algoritmo ausiliario può essere utilizzato in altri algoritmi specificandone solo il nome.
condizione si trova tra le parole "se" e "allora".
Ad esempio: se conosci l'inglese, premi uno. In questa frase, la condizione fa parte della frase "conosci l'inglese".
dati - informazioni che trasportano un certo carico semantico e sono presentate in modo tale da poter essere trasmesse e utilizzate per questo algoritmo.
Processo algoritmico - risolvere un problema mediante un algoritmo utilizzando determinati dati.
L'algoritmo può avere una struttura diversa.Per descrivere un algoritmo, il cui concetto dipende anche dalla sua struttura, è possibile utilizzare una serie di metodi diversi, ad esempio: verbale, grafico, utilizzando un linguaggio algoritmico appositamente sviluppato.
Quale dei metodi verrà utilizzato dipende da diversi fattori: dalla complessità del problema, da quanto è necessario dettagliare il processo di risoluzione del problema, ecc.
Un algoritmo grafico è un concetto che implica la scomposizione di azioni che devono essere eseguite per risolvere un compito specifico, secondo determinate forme geometriche.
I diagrammi grafici non sono rappresentati in modo casuale. Affinché chiunque possa capirli, molto spesso vengono utilizzati i diagrammi a blocchi e gli schemi strutturali di Nassi-Shneiderman.
Inoltre, i diagrammi a blocchi sono mostrati in conformità con GOST-19701-90 e GOST-19.003-80.
Le figure grafiche utilizzate nell'algoritmo sono suddivise in:
I principali Le immagini di base vengono utilizzate per indicare le operazioni necessarie per l'elaborazione dei dati durante la risoluzione di un problema.
Ausiliario. Le immagini ausiliarie sono necessarie per indicare gli elementi individuali, non i più importanti, per risolvere un problema.
Nella grafica, le forme geometriche utilizzate per rappresentare i dati sono chiamate blocchi.
Tutti i blocchi sono in sequenza "dall'alto verso il basso"e "da sinistra a destra" è la corretta direzione del flusso. Con la sequenza corretta, le linee che collegano i blocchi non mostrano la direzione. In altri casi, la direzione delle linee è indicata da frecce.
Un diagramma di flusso corretto non dovrebbe avere più di un output dai blocchi di elaborazione e meno di due output dai blocchi responsabili delle operazioni logiche e del controllo del rispetto delle condizioni.
Come costruire correttamente un algoritmo?
La struttura dell'algoritmo, come detto sopra, deve essere costruita in accordo con GOST, altrimenti non sarà comprensibile e accessibile ad altri.
La metodologia di registrazione generale include i seguenti punti:
Il nome con cui sarà chiaro quale problema può essere risolto utilizzando questo schema.
Ogni algoritmo dovrebbe avere un inizio e una fine chiari.
Gli algoritmi dovrebbero descrivere chiaramente e chiaramente tutti i dati, sia di input che di output.
Quando si elabora l'algoritmo, è necessario notare le azioni che consentiranno di eseguire le azioni necessarie per risolvere il problema sui dati selezionati. Un esempio dell'algoritmo:
Una corretta costruzione del circuito faciliterà notevolmente il calcolo degli algoritmi.
Ovale posizionato orizzontalmente - inizio e fine (segno di fine).
Rettangolo posizionato orizzontalmente - calcolo o altre azioni (segno di processo).
Parallelogramma posizionato orizzontalmente - input o output (segno dati).
Rombo posizionato orizzontalmente - controllo delle condizioni (segno della soluzione).
Un esagono allungato e posizionato orizzontalmente è una modifica (segno di preparazione).
I modelli di algoritmo sono mostrati nella figura seguente.
Variante formula-parola della costruzione dell'algoritmo.
Gli algoritmi delle formule di parole sono scritti in formatoin forma arbitraria, nel linguaggio professionale del settore a cui appartiene il compito. La descrizione delle azioni in questo modo viene eseguita utilizzando parole e formule.
Nel campo dei computer, tutto si basa su algoritmi.Senza chiare istruzioni inserite sotto forma di un codice speciale, nessuna tecnica o programma funzionerà. Nelle lezioni di informatica, gli studenti cercano di fornire i concetti di base degli algoritmi, insegnare loro come usarli e crearli da soli.
La creazione e l'utilizzo di algoritmi in informatica è un processo più creativo rispetto, ad esempio, al seguire le istruzioni per risolvere un problema in matematica.
C'è anche un programma speciale"Algorithm", che aiuta le persone che non sono informate nel campo della programmazione, a creare i propri programmi. Una tale risorsa può diventare un assistente indispensabile per coloro che stanno muovendo i primi passi nell'informatica e vogliono creare i propri giochi o qualsiasi altro programma.
D'altra parte, qualsiasi programma è un algoritmo.Ma se l'algoritmo esegue solo le azioni che devono essere eseguite inserendo i suoi dati, il programma trasporta già dati già pronti. Un'altra differenza è che il programma può essere brevettato e proprietario, ma l'algoritmo no. L'algoritmo è un concetto più ampio di un programma.
In questo articolo, abbiamo analizzato il concetto di algoritmo e i suoi tipi, abbiamo imparato a scrivere correttamente schemi grafici.