Hola lokixxx.
Por lo que entiendo de tu mensaje, podría ser:
Código C++:
Ver original#include<iostream>
#include <vector>
using namespace std;
#define MAX_ROWS 4 // m
#define MAX_COLS 4 // n
typedef int tMatriz[MAX_ROWS][MAX_COLS]; // mxn
typedef vector <int> tVector; // n
void Matriz_x_Vector(tMatriz, tMatriz, tVector );
void MostrarMatriz(tMatriz);
void Inicializar(tMatriz, tVector &);
int main()
{
tMatriz m1 , m2;
tVector v;
Inicializar(m1,v);
MostrarMatriz(m1);
Matriz_x_Vector(m1, m2, v);
cout << "---------------------------" << endl;
MostrarMatriz(m2);
cin.get();
return 0;
}
void Inicializar(tMatriz m, tVector &v)
{
int x = 1;
for(int r = 0; r < MAX_ROWS; r++) {
v.push_back(r+1);
for(int c = 0; c < MAX_COLS; c++)
m[r][c] = x++;
}
}
void Matriz_x_Vector(tMatriz source, tMatriz target, tVector vec)
{
for(int r = 0; r < MAX_ROWS; r++)
for(int c = 0; c < MAX_COLS; c++)
target[r][c] = source[r][c] * vec[r];
}
void MostrarMatriz(tMatriz mat)
{
for(int r = 0; r < MAX_ROWS; r++ ) {
for(int c = 0; c < MAX_COLS; c++)
cout << mat[r][c] << '\t';
cout << endl << endl;
}
}
(El órden de carga de la matriz puede ser diferente, pero no está especificado en el enunciado)
Saludos. :)