Salve ragazzi, il mio problema è il seguente, vorrei che una volta determinata la lunghezza di un vettore il programma carichi i valori da file e ho scritto questo ma non va...perchè?
# include <iostream>
#include <math.h>
#include <fstream>
using namespace std;
void scambia(int[], int, int );
int main(){
int dim;
int k;
int risp;
fstream filein;
cout<<"Inserisci numero componenti "<<endl;
cin>>dim;
int vet[dim];
cout<<"Inserisci i dati del vettore "<<endl;
filein.open("file.txt", ios::in);
while(!filein.eof()){
for(int i=0;i<dim;i++){
cin>>k;
vet[i]=k;
}
}
filein.close();
cout<<"Il vettore inserito è"<<endl;
for(int i=0; i<dim;i++){
cout<<vet[i]<<" ";
}
cout<<endl;
cout<<"Vuoi ordinare il vettore?(0/1)";
cin>>risp;
if(risp==1){
for (int i=0;i<dim-1;i++)
{
for(int j=i+1;j<dim;j++)
{
if (vet[i]>vet[j])
{
scambia(vet,i,j);
}
}
}
cout<<"Il vettore ordinato è"<<endl;
for(int i=0; i<dim;i++){
cout<<vet[i]<<" ";
}
cout<<endl;
}
return 0;
}
void scambia(int vet[], int a, int b){
int tmp;
tmp=vet[a];
vet[a]=vet[b];
vet[b]=tmp;
}