logo
Un versatile strumento di mappatura mentale multipiattaforma.
appstore
Ottieni da App Store
Ottieni
logo
Un versatile strumento di mappatura mentale multipiattaforma.
appstore
Ottieni da App Store
Ottieni
edraw-max-horizontal
Guide
What's New
Edraw Max online
PROVALO GRATIS
ACQUISTA ORA

Spiegare l'algoritmo e il diagramma di flusso con esempi

> Esempi di diagrammi di flusso > Spiegare l'algoritmo e il diagramma di flusso con esempi
Posted by Manuela Piccola | 05/06/2020
L’algoritmo e il diagramma di flusso sono due tipi di strumenti per spiegare il processo di un programma. In questo articolo vediamo le differenze tra un algoritmo e un diagramma di flusso, e come creare un diagramma di flusso per spiegare un algoritmo in modo visivo.

Algoritmi e diagrammi di flusso sono due strumenti diversi utilizzati per creare nuovi programmi, in particolare quelli informatici. Un algoritmo è un'analisi passo per passo del processo, mentre un diagramma di flusso spiega i passi di un programma in modo grafico.

Definizione di algoritmo

L’algoritmo è la scrittura di un metodo logico passo dopo passo per risolvere un problema; in altre parole, un algoritmo è una procedura per risolvere i problemi. Per risolvere un problema matematico o informatico, innanzitutto bisogna elaborare un algoritmo. Un algoritmo comprende i calcoli, il ragionamento e l'elaborazione dei dati, e può essere presentato tramite linguaggi naturali, pseudo-codici, diagrammi di flusso, ecc.

Definizione di diagramma di flusso

Un diagramma di flusso è la rappresentazione grafica di un algoritmo con l'aiuto di diversi simboli, forme e frecce per dimostrare un processo o un programma. Con gli algoritmi, possiamo facilmente comprendere un programma. Lo scopo principale di un diagramma di flusso è quello di analizzare diversi processi. In un diagramma di flusso vengono applicati diversi grafici standard:

  • Simbolo terminale – Inizio/Fine
  • Terminal Box Figure

  • Input / Output
  • Input / Output Figure

  • Processo / Istruzioni
  • Process Figure

  • Decisione
  • Decision Figure

  • Connettore/Freccia
  • Connector Figure

La grafica qui sopra rappresenta una parte di un diagramma di flusso. Il processo in un diagramma di flusso può essere espresso attraverso quadrati e frecce con dimensioni e colori diversi. In un diagramma di flusso, possiamo facilmente evidenziare un certo elemento e le relazioni tra le parti.

Differenza tra algoritmo e diagramma di flusso

Se si prende un diagramma di flusso di un film, allora un algoritmo è la storia di quel film. In altre parole, un algoritmo è il nucleo di un diagramma di flusso. In realtà, nel campo della programmazione informatica, ci sono molte differenze tra l'algoritmo e il diagramma di flusso per quanto riguarda vari aspetti quali la precisione, il modo in cui vengono visualizzati e il modo in cui le persone li percepiscono. Di seguito è riportata una tabella che illustra in dettaglio le differenze.

Algoritmo Diagramma di flusso
È una procedura per risolvere i problemi. È una rappresentazione grafica di un processo.
Il processo è mostrato in istruzioni passo dopo passo. Il processo è mostrato in un diagramma informativo blocco per blocco.
È complesso e difficile da capire. È intuitivo e facile da capire.
È facile eseguire il debug degli errori. È difficile eseguire il debug degli errori.
La soluzione è presentata in linguaggio naturale. La soluzione è presentata in formato pittorico.
È un po' più facile risolvere problemi complessi. È difficile risolvere problemi complessi.
Creare un algoritmo richiede più tempo. Creare un diagramma di flusso richiede meno tempo.

Tipi di algoritmo

Non sorprende che gli algoritmi siano ampiamente utilizzati nella programmazione informatica, tuttavia possono essere applicati per risolvere problemi matematici e problemi di vita quotidiana. Una domanda che sorge spontanea è: quanti tipi di algoritmi vi sono? Il Dott. Christoph Koutschan, un informatico che lavora presso l'Istituto di ricerca per il calcolo simbolico (RISC) in Austria ha fatto un sondaggio sugli algoritmi più importanti. Come risultato ha elencato 32 algoritmi fondamentali nel campo dell'informatica. Nonostante la complessità degli algoritmi, possiamo generalmente dividere gli algoritmi in 6 tipi fondamentali in base alla loro funzione.

Types of Algorithm

Fonte dell’immagine: www.educba.com

1. Algoritmo ricorsivo

Fa riferimento ad un modo per risolvere i problemi scomponendo ripetutamente il problema in sotto-problemi dello stesso tipo. L'esempio classico di utilizzo di un algoritmo ricorsivo per risolvere i problemi è la Torre di Hanoi.

2. Algoritmo dividi e conquista

Tradizionalmente, l'algoritmo dividi e conquista consiste di due parti: 1. scomporre un problema in alcuni piccoli sotto-problemi indipendenti dello stesso tipo; 2. trovare la soluzione finale dei problemi originali dopo averli risolti separatamente.

I punti chiave dell'algoritmo dividi e conquista sono:

  • Se si elaborano i sotto-problemi e la sottostruttura ad anello del problema originale, si può facilmente trasformare il problema originale in un piccolo problema semplice.
  • Cerca di suddividere l'intera soluzione in varie fasi (fasi diverse richiedono soluzioni diverse) per semplificare il processo.
  • I sotto-problemi sono facili da risolvere? Se non lo sono, il problema originale può richiedere molto tempo.

3. Algoritmo di programmazione dinamica

Sviluppato da Richard Bellman negli anni '50, l'algoritmo di programmazione dinamica è generalmente utilizzato nei problemi di ottimizzazione. In questo tipo di algoritmo, i risultati passati sono raccolti per un uso futuro. Similmente all'algoritmo dividi e conquista, un algoritmo di programmazione dinamica semplifica un problema complesso scomponendolo in alcuni semplici sotto-problemi. Tuttavia, la differenza maggiore sta nel fatto che il secondo richiede la sovrapposizione di sotto-problemi, mentre il primo non ne ha bisogno.

4. Algoritmo greedy

Questo è un altro tipo di algoritmo utilizzato per risolvere i problemi di ottimizzazione. Con questo algoritmo si tende a trovare sempre la soluzione migliore in ogni fase, invece di considerare l'ottimizzazione complessiva, cioè si considera l'ottimizzazione locale. A causa dei limiti dell'algoritmo greedy, va notato che la chiave per la scelta di un algoritmo greedy è se considerare eventuali conseguenze future.

5. Algoritmo della forza bruta

L'algoritmo della forza bruta è una soluzione semplice e diretta al problema, normalmente basata sulla descrizione del problema e sulla definizione del concetto in questione. Per descrivere la strategia della forza bruta si può usare la frase "just do it!". In breve, un algoritmo della forza bruta è considerato come uno degli algoritmi più semplici, che itera tutte le possibilità e trova una soluzione soddisfacente.

6. Algoritmo di Backtracking

Basato su una ricerca ricorsiva in profondità, l'algoritmo di backtracking si concentra sulla ricerca della soluzione del problema durante il processo di ricerca simile all'enumerazione. Quando non è in grado di soddisfare la condizione, “fa marcia indietro" e tenta un altro percorso. È adatto per trovare soluzioni a problemi grandi e complicati, e si è guadagnato la reputazione di "metodo di soluzione generale". Uno degli algoritmi di backtracking più famosi è il puzzle delle otto regine.

Come usare i diagrammi di flusso per rappresentare gli algoritmi

Ora che abbiamo le definizioni di algoritmo e diagramma di flusso, come possiamo usare un diagramma di flusso per rappresentare un algoritmo? Per creare un algoritmo, dobbiamo scaricare un software.

Edraw Max: un coltellino svizzero per tutte le tue esigenze di creazione di diagrammi

  • Crea senza sforzo oltre 280 tipi di diagrammi.
  • Fornisci vari modelli e simboli per soddisfare le tue esigenze.
  • Interfaccia drag and drop e facile da usare
  • Personalizza ogni dettaglio utilizzando toolkit intelligenti e dinamici.
  • Compatibile con una varietà di formati di file, come MS Office, Visio, PDF, ecc.
  • Sentiti libero di esportare, stampare e condividere i tuoi diagrammi.

Gli algoritmi sono usati principalmente per programmi matematici e informatici, mentre i diagrammi di flusso possono essere usati per descrivere tutti i tipi di processi: commerciali, educativi, personali e naturalmente gli algoritmi. Quindi i diagrammi di flusso sono spesso utilizzati come strumento di pianificazione del programma per organizzare visivamente il processo passo dopo passo. Ecco alcuni esempi:

Esempio 1: Stampa da 1 a 20:

Algoritmo:

Passo 1: Inizializzare X come 0,

Passo 2: Incremento X di 1,

Passo 3: Stampa X,

Passo 4: Se X è inferiore a 20, tornare al passo 2.

Diagramma di flusso:

Flowchart Algorithm

Esempio 2: Convertire la temperatura da Fahrenheit (℉) a Celsius (°C)

Algoritmo:

Passo 1: lettura della temperatura in Fahrenheit,

Passo 2: Calcolare la temperatura con la formula C=5/9*(F-32),

Passo 3: Stampa C,

Diagramma di flusso:

Flowchart Algorithm 2

Esempio 3: Determinare se uno studente ha superato o meno l'esame:

Algoritmo:

  • Passo 1: inserire i voti di 4 corsi M1, M2, M3 e M4,
  • Passo 2: calcolare il voto medio con la formula "Voto=(M1+M2+M3+M4)/4".
  • Passo 3: Se il voto medio è inferiore a 60, stampare "FALLITO", altrimenti stampare "SUPERATO".

Diagramma di flusso:

Algorithm Flowchart Example 4

Conclusione

Da quanto sopra si può concludere che un diagramma di flusso è la rappresentazione visiva di un algoritmo, e un algoritmo può essere espresso e analizzato attraverso un diagramma di flusso.

Un algoritmo mostra ogni passo del processo verso la soluzione finale, mentre un diagramma di flusso mostra come eseguire il processo collegando i diversi passi. Un algoritmo utilizza principalmente parole per descrivere i passi, mentre un diagramma di flusso utilizza simboli, forme e frecce, per rendere il processo più logico.

Articoli correlati

3 Tipi di diagrammi di flusso

Come creare un fantastico diagramma di flusso

Esempi di diagramma di flusso dell'algoritmo

Top 10 modelli di diagrammi di flusso creativi

Esempi di schemi di rete neurale

Inizia! Amerai questo software diagramma facile da usare.

Edraw Max è perfetto non solo per diagrammi di flusso dall'aspetto professionale, organigrammi, mappe mentali, ma anche diagrammi di rete, planimetrie, flussi di lavoro, design della moda, diagrammi UML, schemi elettrici, illustrazione scientifica, grafici e grafici ... e questo è solo l'inizio!