Concetti Chiave
- Il programma include funzioni per gestire un array di interi, come il dimensionamento, il caricamento, l'ordinamento e la ricerca.
- La funzione Dimensionamento richiede all'utente di inserire la dimensione dell'array entro un limite massimo.
- CaricaVettore consente all'utente di inserire elementi nell'array, iterando per il numero di elementi definito.
- L'algoritmo di ordinamento utilizza un semplice confronto e scambio per posizionare gli elementi in ordine crescente.
- La funzione Ricerca implementa una ricerca binaria per trovare un elemento nell'array ordinato.
#include
#define MAX 50
using namespace std;
int Dimensionamento();
void CaricaVettore(int v[], int d);
void Ordina(int v[], int d);
void Scambia(int& a, int& b);
int Ricerca(int v[], int d);
int main ()
{
int d, v[MAX], trovato;
d=Dimensionamento();
CaricaVettore(v,d);
Ordina(v,d);
trovato= Ricerca(v,d);
if (trovato) {
cout
}
else {
cout
}
return 0;
}
int Dimensionamento(){
int d;
do{
cout
cin>>d;
} while (dMAX);
return d;
}
void CaricaVettore(int v[], int d){
cout
for (int i=0; i
}
cout
}
void Ordina (int v[ ], int d){
cout
for (int i=0; i
Scambia (v, v[j]);
}
}cout
}
}
void Scambia (int& a, int& b){
int c;
c=a;
a=b;
b=c;
}
int Ricerca (int v[], int d) {
int s=0, sx=0, dx=d-1, md, n;
cout
cin>>n;
do{
md=(sx+dx)/2;
if (v[sx]==n || v[dx]==n || v[md]==n) {
s=1;
}
else{
dx= md-1;
}
} while (sx
return s;
}