Título: vector < vector<int> > ?
Publicado por: bemone en 23 Agosto 2012, 07:38 am
Buenas, tengo que almacenar en una matriz la multiplicacion de dos arreglos y mi problema es que no se como acceder a la posicion de la matriz. Tendre que crear otras variables e ir decrementandolas para acceder? No creo que esa sea la mejor manera. En fin: vector<int> vEntrada(tamano.length()), vProducto(tamano2.length()); vector < vector <int> > vPrincipal(tamano2.length(), vector<int>((tamano.length()+tamano2.length())-1)); vector<int>::reverse_iterator i, j; for(i=vProducto.rbegin(); i<vProducto.rend(); i++){ for(j=vEntrada.rbegin(); j<vEntrada.rend(); j++){ vPrincipal[][] = (*i)*(*j); } }
Saludos
Título: Re: vector < vector<int> > ?
Publicado por: BlackZeroX en 23 Agosto 2012, 08:10 am
Solo necesitas: vector<int>::reference junto con back() y ocupar el miembro push_back(); http://www.cplusplus.com/reference/stl/vector/back/ vector<int> vEntrada(tamano.length()), vProducto(tamano2.length()); vector < vector <int> > vPrincipal(tamano2.length(), vector<int>((tamano.length()+tamano2.length())-1)); vector<int>::reverse_iterator i, j; vector<int>::reference ref; for(i=vProducto.rbegin(); i<vProducto.rend(); i++){ // aqui agregarias otro elemento a myvector, no lo pongo yo... ref = myvector.back(); for(j=vEntrada.rbegin(); j<vEntrada.rend(); j++){ ref.push_back( (*i)*(*j) ); // o tambien: myvector.back().push_back( (*i)*(*j) ); para evitar vector<int>::reference ref; } }
Título: Re: vector < vector<int> > ?
Publicado por: bemone en 24 Agosto 2012, 02:12 am
Solo necesitas: vector<int>::reference junto con back() y ocupar el miembro push_back(); http://www.cplusplus.com/reference/stl/vector/back/ vector<int> vEntrada(tamano.length()), vProducto(tamano2.length()); vector < vector <int> > vPrincipal(tamano2.length(), vector<int>((tamano.length()+tamano2.length())-1)); vector<int>::reverse_iterator i, j; vector<int>::reference ref; for(i=vProducto.rbegin(); i<vProducto.rend(); i++){ // aqui agregarias otro elemento a myvector, no lo pongo yo... ref = myvector.back(); for(j=vEntrada.rbegin(); j<vEntrada.rend(); j++){ ref.push_back( (*i)*(*j) ); // o tambien: myvector.back().push_back( (*i)*(*j) ); para evitar vector<int>::reference ref; } }
Lo que vos decis es almacenarlo en un vector y luego almacenar ese vector a la matriz?
Título: Re: vector < vector<int> > ?
Publicado por: BlackZeroX en 24 Agosto 2012, 05:50 am
De hecho con: myvector.back().push_back( (*i)*(*j) ); lo agregas directamente a la matriz... obviamente debes crear un nuevo vector... OJO son suposiciones pues la verdad NO SE COMO QUIERES ACCEDER a myvector... la otra forma es crear variables...
Dulces Lunas!ˇ.
|