I am trying to create a function form a vector from my matrix and I do not understand where my mistake is?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
function A=combined (V)
for V(k)= A(i,j)
k=1;
for
i=1;
j=1;
k=k+1;
end
end
3 comentarios
dpb
el 27 de Sept. de 2016
Indeed, there are several issues but the one of defining the for...end loop indices and range is key. To do the requested function, using "linear addressing" would be a good way to proceed. Look those up in the documentation and study for loops...
Respuestas (3)
dpb
el 27 de Sept. de 2016
"...transform my matrix into a vector"
Really don't need a function for this; Matlab has syntax to do it already. A previous answer shows reshape, except I'd suggest to simply use it ( reshape, that is) inline as shown there in the function instead.
There's another Matlab idiom that's even more compact--
A=A(:).'; % convert A of unspecified dimensions to row vector
NB: the .' transpose operator to return the requested row vector instead of the column vector colon returns.
2 comentarios
dpb
el 27 de Sept. de 2016
Then wrap the above inside the function wrapper. Unless the assignment also requires a loop be used???
James Tursa
el 28 de Sept. de 2016
Here is an outline of what you need to be using for the for loops (seems to be a requirement for this assignment).
% Insert any initialization code here
for i = 1:size(V,1)
for j = 1:size(V,2)
% Insert your assignment etc code here
end
end
1 comentario
Ver también
Categorías
Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!