Non riesco a risolvere questo errore
in questo sottoprogramma che serve a leggere una matrice di caratteri minuscoli di dimensioni date
l'errore sta in
e nei parametri dell'if, cioé nelle matrici di caratteri. Ho capito che il problema sta nella dichiarazione, quindi in [char * M], almeno credo.
Come dovrei risolvere?
questo è tutto il codice, incompleto
stcol sta per stampa colonne
Codice:
invalid types 'char[int]' for array subscript
Codice:
void leggi(char * M, int m, int n, char min, char max){
for(int i=0; i<m; i++)
{
int j=0;
do{
cout << "Inserire una lettera minuscola: ";
cin >> M[i][j];
if((M[i][j]>min) && (M[i][j]<max))
{j++;}else{
cout << "Riprova."<< endl;
}
}while(j<n);
}
}
Codice:
[COLOR=#000000]cin >> M[i][j];[/COLOR]
Come dovrei risolvere?
questo è tutto il codice, incompleto
Codice:
#include <iostream>using namespace std;
void leggi(char * M, int m, int n, char min, char max);
void cerca(char * M, char V[], int m, int n, int X[], int Y[], int &l);
void stcole(char * M, char S[], int m, int n);
int main()
{
int m,n,o;
cout << "***Ricerca consonanti in una matrice di caratteri e qualcos'altro***"<<endl;
cout << "Numero di righe: ";
cin >> m;
cout << "Numero colonne: ";
cin >> n;
o=m*n;
char M[m][n], mn='a', mx='z', V[21]={'b','c','d','f','g','h','j','k','l','m','n','p','q','r','s','t','v','x','w','y','z'};
leggi(&M[0][0], m, n, mn, mx);
int X[o], Y[o], l=0;
cerca(&M[0][0], V, m, n, X, Y, l);
cout << "Consonante\tRiga\tColonna"<<endl;
for(int i=0; i<l; i++)
{
cout << M[X[i]][Y[i]] << "\t"<<X[i]<<"\t"<<Y[i]<<endl;
}
char P[11];
cout << "Inserire una parola (max 10 lettere): ";
cin >> P;
stcole(&M[0][0], P, m, n);
return 0;
}
void leggi(char * M, int m, int n, char min, char max)
{
for(int i=0; i<m; i++)
{
int j=0;
do{
cout << "Inserire una lettera minuscola: ";
cin >> M[i][j];
if((M[i][j]>min) && (M[i][j]<max))
{j++;}else{
cout << "Riprova."<< endl;
}
}while(j<n);
}
}
void cerca(char * M, char V[], int m, int n, int X[], int Y[], int l)
{
}
void stcole(char * M, char S[], int m, int n)
{
}
Ultima modifica: