Importanza degli algoritmi
Varie / / August 08, 2023
Quando eseguiamo un programma per computer, non possiamo iniziare a scrivere frasi (comandi, istruzioni) senza ulteriori indugi. Prima dobbiamo pianificare (e tanto più a fondo quanto più grande e difficile è il programma che vogliamo build) cosa farà esattamente il programma e come lo farà, quindi tradurrà questo algoritmo in Istruzioni.
Definiamo un algoritmo come una sequenza finita e strutturata di ordini che costituiscono il istruzioni per un computer o altra macchina analogica con capacità di elaborazione (come a smartphone).
L'algoritmo non è il programma stesso, ma piuttosto quest'ultimo è la realizzazione dell'algoritmo in a lingua che la macchina che dovrebbe eseguirlo possa capirlo.
E qui, un piccolo chiarimento: gli algoritmi sono generalmente implementati nei computer per mezzo di linguaggi di programmazione file di alto livello, che non sono direttamente eseguibili, ma sono "compilabili" (processo che genera un Software che il computer può comprendere ed eseguire).
Questo linguaggio di programmazione di alto livello è una via di mezzo tra qualcosa di comprensibile per un essere umano di a piede (anche se richiede alcune conoscenze tecniche) e ciò che può essere compreso ed eseguito direttamente da a computer.
Se cerchiamo una definizione enciclopedica, gli algoritmi sono vecchi quanto le prime istruzioni scritte per svolgere un compito.
Facciamo un esempio: mungere una mucca. prima calma l'animale. Quindi metti un contenitore sotto le mammelle. Quindi, siediti guardando le mammelle della mucca. Metti le mani attorno a due delle quattro mammelle dell'animale e stringi leggermente la base di ciascuna mammella. ripetere il movimento finché non rimane più latte nelle mammelle. Ora fai lo stesso per le restanti due mammelle finché non sono anch'esse vuote. Rimuovere il contenitore pieno di latte. Ha finito.
Rivediamo: abbiamo una serie di istruzioni specifiche che terminano a un certo punto. Abbiamo un algoritmo per mungere le mucche.
In tutti gli algoritmi troviamo elementi che si ripetono, come i loop (ripetere il movimento), il processo decisionale (la mammella è vuota? No -> continua la mungitura; if -> vai agli altri due o end) e azioni.
Questi elementi, cicli, condizioni, salti e azioni, hanno le loro corrispondenze nelle strutture dei linguaggi di programmazione. programmazione, pur disponendo di un maggior numero di strutture per potersi occupare della risoluzione delle problematiche specifiche che si presentano.
L'algoritmo è un'astrazione della risoluzione di un problema, che, quando implementato in un linguaggio di programmazione, richiede strutture più complicate.
Questo è il caso delle funzioni, che eseguono un compito specifico e possono essere richiamate da diverse parti del programma.
Esistono diversi modi di esprimere gli algoritmi.
Il più intuitivo è quello del linguaggio naturale, come nel caso della mungitura di una mucca che ho spiegato prima. Ci basta semplicemente descrivere in modo conciso le istruzioni per svolgere un compito. Tuttavia, non è un modo standardizzato, funziona solo per se stessi o tra un gruppo molto ristretto di persone e per compiti molto semplici.
Se stiamo cercando qualcosa di regolamentato e standardizzato, abbiamo il diagrammi di flusso, una forma grafica molto visiva che rappresenta le azioni e le decisioni principali che vengono prese nell'esecuzione dell'algoritmo.
Lo pseudocodice in una rappresentazione formale in testo molto più simile ad un linguaggio di programmazione, che ha i suoi elementi e che è facilmente trasferibile ad un codice compilabile.
Fotolia: doyata – hans
Scrivi un commento
Contribuisci con il tuo commento per aggiungere valore, correggere o discutere l'argomento.Riservatezza: a) i tuoi dati non saranno condivisi con nessuno; b) la tua email non sarà pubblicata; c) per evitare abusi, tutti i messaggi sono moderati.