Salve a tutt sono nuovo del forum e scrivo perche mi sono incartato in questo programma:
Non riesco a scrivere né il minimo sulla diagonale principale ne su quella secondaria!!!
Il programma su scritto mi da correttamente i valori di tutti e due i massimi ma per i minimi mi da sempre 0!!!
Help me domani ho l'esame di informatica!!!
codice:#include <cstdlib> #include <iostream> using namespace std; /*sia m*n matrice immessa da utente,. Scrivere un programma che definisca un vettore v di 4 elementi, i cui valori siano: -il massimo sulla diagonale principale posizione v[0] -il massimo sulla diagonale secondaria posizione v[1] -il minimo sulla diagonale principale posizione v[2] -il minimo sulla diagonale secondaria posizione v[3] */ int main(int argc, char *argv[]) { int A[50][50], M, N, i, j; cout<<"inserire elementi righe";cin>> M;cout<<endl; cout<<"inserire elementi colonne";cin>>N ;cout<<endl; for (i=0;i<M;i++) for (j=0;j<N;j++) { cout<<"Elemento["<<i<<"]["<<j<<"]";cin>> A[i][j];cout<<endl; } // lettura a video matrice! for (i=0;i<M;i++) { for (j=0;j<N;j++) cout<<A[i][j];cout<<" ";cout<<endl; } //massimo sulla diagonale principale int maxp; A[0][0]=maxp; for (i=0;i<M;i++) { for (j=0;j<N;j++) if(i==j) if (maxp<A[i][j]) maxp=A[i][j]; } //minimo sulla diag principale int minp; for (j=0;j<N;j++) { A[0][j]=minp; for(i=0;i<M;i++) { if(i==j) { if(minp>A[i][j]) minp=A[i][j]; }}} //massimo sulla diagonale secondaria int maxs; A[0][N]=maxs; { for(j=N-1;j>=0;j--) for(i=0;i<M;i++) { if (A[i][j]=A[i][N-1-i]) if (maxs<A[i][j]) maxs=A[i][j]; } } //minimo sulla secondaria cout<<maxp;cout<<endl; cout<<maxs;cout<<endl; cout<<minp;cout<<endl; system("PAUSE"); return EXIT_SUCCESS; }


!!!
Rispondi quotando
