Il tutto dovrei farlo preferibilmente mediante l'uso di funzioni. Riscontro dei problemi col secodno punto e con i succesivi in quanto non so come far ritornare un array da una funzione e in che modo manipolarla nella funzione successiva. So che posso farlo tramite un puntatore ma non so dove sia più corretto dichiarare l puntatore e come utilizzarlo.
Posto di seguito una bozza del codice sorgente da me scritto nella speranza che qualcuno di voi mi aiuti a capire se questa prima parte è corretta ed aiutarmi a capire come affrontare i punti successivi.
- Codice:
#include <iostream>
#include <stdlib.h>
//dichiarazioni
const int M=100;
int a[M];
int n;
using namespace std;
//inserimento array di interi
void input(int a[], int n){
bool ok=true;
int temp[M];
do{
ok=true;
cout << "inserire numero di elementi: "<<endl;
cin >> n;
if(n<=0){
cout << "il numero di elementi deve essere positivo"<<endl;
ok=false;
} else if(n>0){
cout << "inserire elementi dell'array: "<<endl;
for(int i=0; i<n; i++)
cin >>temp[i];
ok=true;
}
}while(!ok);
for(int j=0; j<n; j++){
a[j]=temp[j];
}
return;
}
//visualizzo la lista inserita
void visualizza(int a[] ){
cout << "la lista di elementi inserita e': "<<endl;
for(int i=0; i<n; i++)
cout << a[i];
cout <<endl;
return;
}
//MAIN
int main(){
int lista[M];
int numero;
input(lista, numero);
visualizza(lista);
system("pause");
return 0;
}
P.S. se provate a compilare il codice noterete che non mi visualizza a video l'array.
Sareste cosi gentili da aiutarmi?
Ringrazio in anticipo per l'attenzione.