👤

subprogram pentru inserare linie in matrice

Răspuns :

Răspuns:

#include <iostream>

#include <fstream>

using namespace std;

ifstream f("inserare.in");

ofstream g("inserare.out");

void inserare(int & n, int m, int k, int a[100][100])

{

   int i,j;

   cout << "introdu " << m << " numere care se vor insera in matrice ca linie " << k << "\n";

   for (i=n; i>=k; --i)

       for (j=0; j<m; ++j)

       a[i][j]=a[i-1][j];

   for (int j=0; j<m; ++j)

       cin >> a[k-1][j];

   ++n;

}

int main()

{

   int n,m,k,i,j, a[100][100];

   f >> n >> m >> k;

   for (i=0; i<n; ++i)

       for (j=0; j<m; ++j)

       f >> a[i][j];

   inserare(n,m,k,a);

   for (i=0; i<n; ++i)

   {

       for (j=0; j<m; ++j)

           g << a[i][j] << " ";

       g << "\n";

   }

}

Explicație:

Sper, d.Ianciu, să fie ce aşteptai. Nu ai dat multe date despre indexare, dar asta importă, e de la 0 sau 1. Eu am luat de la 0. Referitor la valoarea lui k am cercetat cazul 0<=k<n. Dacă merge vorba de inserare, atunci k nu poate fi mai mare ca n (numărul de linii), Am folosit fişiere, e mai comod...