Un algoritmo è una prescrizione di un certo sequenze d'azione al performer al fine di raggiungere l'obiettivo desiderato in una serie di passaggi.
Cos'è un algoritmo in informatica? Questo è il suo concetto fondamentale. Il nome deriva dallo scrivere in latino il nome del famoso matematico arabo al-Khorezmi. In uno dei suoi libri ha dato la formulazione delle regole per scrivere numeri Numeri arabi e operazioni sui numeri eseguiti dalla colonna. Successivamente, questo termine ha cominciato a essere considerato il compito esatto della sequenza di azioni, che dà il risultato desiderato sulla base dell'elaborazione dei dati di origine.
Gli algoritmi vengono solitamente utilizzati per eseguirli manualmente o automaticamente. Svilupparli, dal più semplice al più complesso, è un processo creativo. Questo lavoro può essere fatto solo da esseri umani.
Chiariamo la comprensione della definizione di "algoritmo in informatica". Non è così facile. A tale scopo, vengono formulate le proprietà generali dell'algoritmo. L'informatica consente loro di distinguere gli algoritmi da altre istruzioni.
Questo set di istruzioni ha proprietà:
Considerali separatamente.
La variabilità dell'insieme di istruzioni (la sua discrezione) consiste nel fatto che organizza la soluzione del problema sotto forma di fasi successive. Ogni nuovo passaggio viene eseguito solo dopo il completamento del passaggio precedente.
Le sue regole dovrebbero essere chiare e inequivocabili, non consentire un'interpretazione arbitraria. Ciò consente all'algoritmo in informatica di eseguire meccanicamente, senza richiedere ulteriori dati sulla soluzione del problema.
Il compito dovrebbe essere risolto in un numero limitato di fasi.
Una serie di comandi che risolve un problema viene creata in una forma generale. Dovrebbe essere progettato non per un compito, ma per un'intera classe di problemi, che differiscono solo per i dati iniziali che si trovano in un intervallo chiamato ambito di applicazione.
Queste sono tutte le proprietà dell'algoritmo. L'informatica insegna l'applicazione di queste proprietà nella pratica.
Ma alcune proprietà sono poche. Se si basa solo sulle proprietà elencate per giudicare quale algoritmo è in informatica, la sua comprensione sarà chiaramente incompleta e non sufficientemente accurata.
Da un lato, questo insieme di istruzioni non deve necessariamente risolvere alcun problema. D'altra parte, la proprietà del "carattere di massa" non è tanto un algoritmo quanto tutti i metodi matematici. I problemi pratici risolti con metodi matematici si basano sulla selezione di alcune caratteristiche significative che caratterizzano un certo insieme di fenomeni. Quindi le caratteristiche più importanti formano la base del modello matematico, mentre quelle insignificanti vengono scartate.
Quando viene passato l'argomento sugli "algoritmi" informatici, spiegando il significato di questo concetto, spesso gli algoritmi domestici sono usati come esempi:
Insiemi di istruzioni per la famiglia un po 'più complessi sono le ricette di cucina o la procedura per fare medicine. Ma nel senso pieno degli algoritmi non possono essere chiamati. Dopo tutto, la conoscenza è necessaria per creare medicina e cucina, e l'algoritmo prevede l'esecuzione graduale e senza sforzo di alcune prescrizioni.
L'ordine delle operazioni aritmetiche o la costruzione di forme geometriche può anche essere attribuito a questa categoria di informatica.
I tipi di algoritmi differiscono dal tipo di attività, dagli obiettivi e dai modi per risolverli.
Sono:
• Meccanico. Tali serie di comandi sono predefinite (ad esempio, il funzionamento del motore). Sono eseguiti in un'unica sequenza.
• Flessibile (stocastico o euristico). I primi definiscono diversi modi per risolvere il problema, mentre i secondi risolvono problemi sulla base di analogie e associazioni.
• Lineare. I comandi in questo caso vengono eseguiti uno dopo l'altro.
• Branching. Con le condizioni sulla base della verifica di uno dei vari rami possibili.
• Ciclico. Utilizzo di più ripetizioni di più operazioni. In genere, questi set di comandi vengono utilizzati durante la ricerca delle opzioni.
Uno dei rami studiati dall'informatica, l'algoritmizzazione è il processo di creazione di un algoritmo. Una delle fasi preliminari dei compiti algoritmici è la creazione di una rappresentazione strutturale di un insieme di comandi, che viene poi utilizzata in tutte le fasi del lavoro successivo.
Lo schema a blocchi dell'algoritmo - la registrazione dei suoi passi sotto forma di blocchi, combinati tra loro da frecce. Un blocco è un insieme di istruzioni a un passo.
Una tale presentazione è molto popolare, dal momento che è molto chiaro e grazie a questo, i programmi di scrittura e debugging sono molto più semplici. Inoltre, è utile per spiegare come funziona l'algoritmo già pronto.
Formulato come regole.
La prima regola è che opera su oggetti chiamati dati. Inizia con l'elaborazione dei dati di input e il risultato è l'output dei dati di output.
Il secondo - per le prestazioni richiede memoria in cui si trovano i dati. Una memoria consiste di celle denominate chiamate variabili.
Il terzo è la discrezione. È composto da squadre, il cui numero, ovviamente.
Il quarto è il determinismo. In ogni fase, è noto quale passo seguirà.
Il quinto è la performance. Dovrebbe essere completato per un numero limitato di passaggi ed è necessario contrassegnare quale dovrebbe essere il risultato del suo lavoro.