Buona sera a tutti... ho un problema con questo esercizio che dice " data una matrice di numeri interi positivi memorizzare in una matrice di uscita la matrice d'ingresso con le prime due righe scambiate" vi scrivo il mio codice:
#include <iostream>
#include <cstdlib>
using namespace std;
//Esercizio 25 pag 443
int main()
{
int i,j,n,m;
int v[10][10];
int a[10][10];
cout<<"Da quante righe sara' composta la matrice (Max 10)?:";
cin>>n;
cout<<"Da quante colonne (Max 10)?:";
cin>>m;
cout<<"Inserire gli elementi all'interno della matrice:"<<endl;
for (i=0;i<n;i++)
{
for (j=0;j<m;j++)
{
cin>>v[i][j];
}
}
for (i=0;i<n;i++)
{
for (j=0;j<m;j++)
{
a[i][j]=0;
}
}
for (i=(n-1);i<n;i++)
{
for (j=0;j<m;j++)
{
a[i][j]=v[i][j];
}
}
for (i=0;i<(n-1);i++)
{
for (j=0;j<m;j++)
{
a[i][j]=v[(n-(n-1))-i][j];
}
}
cout<<"La matrice dalle prime due righe scambiate e' questa:"<<endl;
for (i=0;i<n;i++)
{
for (j=0;j<m;j++)
{
cout<<'\t'<<a[i][j]<<'\t';
}
cout<<endl;
}
system ("Pause");
return EXIT_SUCCESS;
}
il programma funziona tranquillamente se ho una matrice ad esempio 3x4 ma nn appena provo ad aumentare le righe il programma scambia sempre le prime due righe e mantiene integra l'ultima ma le righe centrali mostreranno dei valori strani mi potete aiutare? grazie a tutti