Ciao,
Io utilizzo questo codice:
e funziona senza problemi... questo è l'output della versione attuale:codice:#include<cstdlib> #include<iostream> using namespace std; void espandiArray(int vect[], int length) { int sum=0; for(int i=0; i<length; i++) { sum += abs(vect[i]); } int array[sum]; int index = 0; // effettua l'espansione for(int i=0; i<length; i++) { int n = vect[i]; if(n < 0) { while(n != 0) { array[index] = -1; n++; index++; } } else if(n > 0) { while(n != 0) { array[index] = 1; n--; index++; } } } cout << "["; for(int i=0; i<index; i++) { cout << array[i] << ","; } cout << "]"; } int main() { int vect[] = {-2,0,1,0,3,2,-5}; espandiArray(vect,7); return 0; }
codice:[-1,-1,1,1,1,1,1,1,-1,-1,-1,-1,-1,]

Rispondi quotando