3° Anno TEORIA 9. Tipi di dato strutturato: vettori e record | Page 25

8 : I dati e la loro struttura nella programmazione ( ARRAY , MATRICI , RECORD ) Vers . 8.2 – Settembre 2022
OSSERVAZIONI
L ’ algoritmo di ricerca sequenziale di un elemento in un vettore o array monodimensionale , effettuerà al massimo n confronti ponendosi nel caso pessimo ( ossia quello in cui l ’ elemento fornito non è presente al suo interno ).
Caso particolare : SCANSIONE SEQUENZIALE ossia ricerca sequenziale con conteggio del numero di occorrenze
ALGORITMO ScansioneSequenziale MAXDIM 10 PROCEDURA main ( )
v : ARRAY [ MAXDIM ] DI INT i , n , elemento , numoccorrenze : INT
INIZIO
/* leggo la dimensione del vettore da caricare ( vedi esercizio precedente )*/ …. /* carico gli elementi nel vettore ( vedi esercizio precedente ) */ …. /* leggo l ’ elemento da ricercare */ Leggi ( elemento )
/* effettuo la ricerca dell ’ elemento all ’ interno del vettore non arrestandosi */ /* e tenendo il conto del numero di volte in cui eventualmente compare */ numcorrenze � 0
PER i� 1 A n ESEGUI
SE ( v [ i ] = elemento ) ALLORA numoccorrenze � numoccorrenze + 1 FINE SE
i � i + 1 /* incremento fondamentale dell ’ indice */ FINE PER
/* comunico l ’ esito all ’ utente */ SE ( numoccorrenze > 0 ) ALLORA Scrivi (“ L ’ elemento è stato trovato ”) Scrivi ( numoccorrenze )
ALTRIMENTI
Scrivi (“ L ’ elemento non è stato trovato ”) FINE SE
FINE
Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 25