sto provando a scrivere un programma che inserisca una riga in una matrice. Il programma chiede da tastiera il posto in cui si vuole inserire la nuova riga e il vettore rappresentante appunto questa riga... Solo che ho un problema:la riga me la inserisce al posto ke desidero io, ma la riga ke c'era a quel posto viene cancellata...invece io vorrei cancellare l'ultima e far scalare tutte le altre..se non avete capito chiedetemi qualche altra cosa...questo è il codice che ho scritto fino ado ora
#include <iostream>
using namespace std;
void leggi_mat(int m[100][100], int &c, int&r);
void ins_riga(int m[][100],int r,int c, int postox);
int main()
{int m[100][100];
int postox=0,r,c,x,y;
cout<<"righe=";
cin>>r;
cout<<"colonne=";
cin>>c;
leggi_mat(m,r,c);
cout<<"postox";
cin>>postox;
ins_riga(m,r,c,postox);
system("PAUSE");
}
void leggi_mat(int m[100][100], int &c, int&r)
{int i,j;
for(i=0;i<r;i++)
for(j=0;j<c;j++)
{cout<<"m["<<i<<"]["<<j<<"]";
cin>>m[i][j];}}
void ins_riga(int m[100][100],int r,int c, int postox)
{int i,temp,k,j;
for(k=0;k<c;k++)
cin>>m[postox][k];
for (i=postox;i<r;i++)
{for(j=0;j<c;j++)
i=r;
m[postox][j]=m[postox+1][j];
}
for(int i=0;i<r;i++)
{for(int j=0;j<c;j++)
cout<<m[i][j]<<"\t";
cout<<endl; }
}