Correzione verifica 2D

Il seguente esercizio deve essere fatto con l’uso di funzioni:

1.scrivere una funzione che valorizzare un array di dimensione 100 con 15 interi casuali compresi tra -20 e 50 ;
2.scrivere una funzione che visualizza l’array sopra valorizzato;
3.scrivere una funzione(con il ciclo while e senza uso del break ) che cerca se nell’array è uscito un dato numero e visualizza :
“Numero dato uscito alla fine”
oppure
“Numero dato uscito nella posizione tot”
oppure
“Numero dato non uscito”;
4.richiamare nel main le due funzioni per eseguire il programma;

/*  Prof. Alessandro Barazzuol  */
#include<iostream>
#include<string>
#include<cstdlib>
#include<ctime>
#include<iomanip>
#define  dim  100

using namespace std;




void valorizza(int array[dim])
{
	 int i=0,n=0;
	 
    
	 for(int i=0;i<15;i++)
	 {
	 n=rand()%71-20;//mette numeri da -20 a 50
	 array[i]=n;
	
	 }
	  
	
}

void visualizza(int array[dim])
{
	
	
	cout<<endl;
	
    for(int i=0;i<15;i++)
    {
	
    	cout<<" "<<array[i];
    
    	
	}

	cout<<endl;

	
	
}
void cerca(int array[dim], int n )
{     
 
     
	int i=0;
	while(array[i]!=n && i!=14)
	{
	i++;
	}
	/*
	da qui esce se:
	 0 1 trovato prima della fine
	 1 0 non trovato prima della fine
	 oppure anche  
	 0 0 trovato alla fine
	 
	 altrimenti se 1 1  continua
	*/	
	if(i==14 && array[i]==n)// caso 0 0 
	{
			cout<<"Trovato "<< n <<" alla fine "<<endl;
		
	}

	else if( array[i]==n && i!=14 )// caso 0 1
	cout<<"Trovato "<< n <<" alla posizione "<<i<<endl;
	
	else// caso 1 0
	cout<<"Numero "  << n<<" non trovato\n";
	
	
}




	


int main()
{
	
	
int array[dim];

	
	int h=25;
	srand(time(0));
	
    valorizza(array);
	visualizza(array);
	cerca(array,h);
	
	
	

}