17/05/10 20:21
Se utilizzi l'indice i tra parentesi quadre, scrivilo con uno spazio
[ i ]
altrimenti non si vede nel forum.
E dopo che hai corretto il codice, dimmi cosa c'è che non va ...
17/05/10 20:24
metalazo
#include<iostream>
using namespace std;
typedef int coppia [ 2 ][ 2 ];
void visualizza(coppia c,int rig,int col);
int main()
{
int i,j,rig,rip;
int col=2;
coppia c;
do
{
cout<<"\n";
cout<<"\n Definisci le dimensioni della matrice :";
//cout<<"\n numero max di righe ";
//cin>>rig;
do
{
for(i=0;i<10;i++)
{
for(j=0;j<col;j++)
{
cout<<"\n Dammi il valore della cella delle coppie [ "<<i<<","<<j<<" ] ";
cin>>c[ i ][ j ];
}
}
}
while(c[ i ]==0 && c[ j ]==0);
cout<<"\n COPPIE: ";
visualizza(c,rig,col);
cout<<"\n Vuoi continuare ancora?";
cout<<"\n si=1 no=0 : ";
cin>>rip;
}
while(rip==1);
}
void visualizza(coppia c,int rig,int col)
{
int i,j;
cout<<"\n i valori contenuti nella matrice sono:";
for(i=0;i<rig;i++)
{
cout<<"\n coppia "<<i<<" ";
for(j=0;j<col;j++)
{
cout<<" "<<c[ i ][ j ]<<" ";
}
}
}
aaa
17/05/10 20:25
E dopo che hai corretto il codice, dimmi cosa c'è che non va ...
17/05/10 20:28
metalazo
ho corretto il codice...
questo programma che ho scritto però non funziona e non riesco a capire il perchè...
il ciclo nn si arresta quando inserisco la coppia (0,0)
aaa
17/05/10 20:32
Tu dichiari la matrice in questo modo
typedef int coppia [ 2 ][ 2 ];
ma poi usi per il primo indice
for(i=0;i<10;i++)
un valore compreso tra 0 e 9
Questo è ovviamente sbagliato ... Dovresti scrivere
typedef int coppia [ 10 ][ 2 ];
e poi
int rig=10, col=2;
e
for(i=0; i<rig; i++)
In più, devi inserire la if che ti dicevo nella for piu' esterna.
Ultima modifica effettuata da 17/05/10 20:53
17/05/10 20:33
metalazo
ok va bene...ma come faccio a far fermare il ciclo per che arrivi alla decima iterazione ?
aaa
18/05/10 19:46
metalazo
Ciao, ho provato come mi hai suggerito il codice per il riempimento è il seguente:
for(i=0;i<rig;i++)
{
for(j=0;j<col;j++)
{
cout<<"\n Dammi il valore della cella delle coppie [ "<<i<<","<<j<<" ] ";
cin>>c[ i ][ j ];
if(c[ i ]==0 && c[ j ]==0)
}
}
ma quando inserisco la coppia (0,0) non si arresta l'inserimento e non esce dal ciclo for
come posso fare ???
aaa