La selezione quindi permette di ramificare il flusso di esecuzione di un algoritmo permettendo di percorrere rami diversi a seconda che una condizione logica sia soddisfatta o meno. Il simbolo utilizzato nei diagrammi a blocchi per rappresentare una selezione è il rombo:
Se la condizione logica è vera verranno eseguite le istruzioni del ramo vero altrimenti quelle del ramo falso. Nell’esempio se val>5 allora l’algoritmo eseguirà le istruzioni presenti nel ramo vero, altrimenti quelle nel ramo falso.
Selezione Semplice
La selezione si dice semplice quando si prevede di compiere azioni solo nel ramo vero o solo nel ramo falso.
Progettare un algoritmo che preso in input un numero intero, stampa la parola “SUCCESSO” se questo è maggiore di 50.
Analisi del problema
Dati Input: val
Dati Output: “SUCCESSO”
Variabili
L’unica variabile che dobbiamo dichiarare è val che è di tipo intero. Ci servirà per leggere (memorizzare) il valore che l’utente inserisce in input.
(val,_,int)
Per prima cosa chiediamo il valore e leggiamo:
A questo punto è necessario controllare se il valore che l’utente ha inserito è maggiore di 50:
Il progetto completo dell’algoritmo è quindi il seguente:
Implementazione selezione semplice
In linguaggio C++ l’implementazione della selezione è la seguente:
Selezione doppia
La selezione si dice doppia quando si prevede di compiere azioni sia nel ramo vero che nel ramo falso.
Progettare un algoritmo che data l’età di una persona stampa la parola “MAGGIORENNE” se questa è maggiore di 18 altrimenti stampa la parola “MINORENNE”.
Analisi del problema
Per risolvere il problema l’esecutore deve prendere in input una sola variabile di tipo intero nella quale memorizzare l’età.
(eta,_,int)
In seguito possiamo direttamente effettuare il controllo su questo valore. Se il valore è maggiore di 18 faremo stampare all’esecutore “MAGGIORENNE” altrimenti “MINORENNE”
Implementazione selezione doppia
Tutti i diagrammi a blocchi sono stati realizzati utilizzando il software Flowgorithm
Torna a selezione
Vai a Condizioni Logiche