IngMetallo
12-08-2011, 19:51
Ragazzi oggi mi sono imbattuto in un problema veramente stupido, suppongo.. ma non riesco a venire a capo.
In un programma che sto facendo ho bisogno di poter modificare un array bidimensionale 2x2 che viene inizializzato con tutti gli elementi a zero.
Eseguendo il codice che vi riporto più sotto, mi sono accorto che l'array veniva sballato dopo la modifica.. così ho aggiunto altre righe di codice per vedere dove fosse il problema.. in pratica dopo avere preso in input x e y non so perché ma il valore della y sballa e l'array di conseguenza non viene modificato correttamente o.o
Dov'è che sbaglio ? non riesco proprio a capire.. :rolleyes:
#include<iostream>
using namespace std ;
int main ()
{
int x, y, nuovo ;
int v[2][2] ;
for (int i=0; i<3; i++) // inizializzazione array
{
for (int j=0; j<3; j++)
{
v[i][j] = 0 ;
}
}
for (int i=0; i<3; i++) // stampa di verifica array
{
for (int j=0; j<3; j++)
{
cout.width(3);
cout << v[i][j] ;
}
cout << endl ;
}
cout << " insersci la posizione dove vuoi inserire un nuovo elemento : " ;
cout << " inserisci x = " ;
cin >> x ;
cout << " inserisci y = " ;
cin >> y ;
cout << " che numero vuoi inserire ? " ;
cin >> nuovo ;
cout << endl ;
v[x][y] = nuovo ;
cout << nuovo << " e stato inserito nella posizione " << x << " ," << y ; // verifica che i valori x e y siano corretti.. qui è dove trovo l'errore
for (int i=0; i<3; i++) //stampa array modificato
{
for (int j=0; j<3; j++)
{
cout.width(3) ;
cout << v[i][j] ;
}
cout << endl ;
}
system ("PAUSE") ;
return 0 ;
}
p.s: studio programmazione da 3 mesi, siate clementi :D
In un programma che sto facendo ho bisogno di poter modificare un array bidimensionale 2x2 che viene inizializzato con tutti gli elementi a zero.
Eseguendo il codice che vi riporto più sotto, mi sono accorto che l'array veniva sballato dopo la modifica.. così ho aggiunto altre righe di codice per vedere dove fosse il problema.. in pratica dopo avere preso in input x e y non so perché ma il valore della y sballa e l'array di conseguenza non viene modificato correttamente o.o
Dov'è che sbaglio ? non riesco proprio a capire.. :rolleyes:
#include<iostream>
using namespace std ;
int main ()
{
int x, y, nuovo ;
int v[2][2] ;
for (int i=0; i<3; i++) // inizializzazione array
{
for (int j=0; j<3; j++)
{
v[i][j] = 0 ;
}
}
for (int i=0; i<3; i++) // stampa di verifica array
{
for (int j=0; j<3; j++)
{
cout.width(3);
cout << v[i][j] ;
}
cout << endl ;
}
cout << " insersci la posizione dove vuoi inserire un nuovo elemento : " ;
cout << " inserisci x = " ;
cin >> x ;
cout << " inserisci y = " ;
cin >> y ;
cout << " che numero vuoi inserire ? " ;
cin >> nuovo ;
cout << endl ;
v[x][y] = nuovo ;
cout << nuovo << " e stato inserito nella posizione " << x << " ," << y ; // verifica che i valori x e y siano corretti.. qui è dove trovo l'errore
for (int i=0; i<3; i++) //stampa array modificato
{
for (int j=0; j<3; j++)
{
cout.width(3) ;
cout << v[i][j] ;
}
cout << endl ;
}
system ("PAUSE") ;
return 0 ;
}
p.s: studio programmazione da 3 mesi, siate clementi :D