I am trying to write a function that takes both an input vector and scalar (v and n respectively). It needs to output the maximum value of the sum of n consecutive integers of v, as well as the index of the first term in v.
Mostrar comentarios más antiguos
I am trying to write a function that takes both an input vector and scalar (v and n respectively). It needs to output the maximum value of the sum of n consecutive integers of v, as well as the index of the first term in v.
Here is an example of how the function should work:
>> [total ind] = maxval([1 2 3 4 5 4 3 2 1],3)
total = 13
ind = 4
Here is the code that I have so far:
I do not understand how to get the function to replace a current maximum with a newly calculated larger maximum. I'm also confused on how to find the index and how to construct the "else" statement.
function [total, ind] = maxval(v, n)
total = 0;
ind = 0;
for a = 1:length(v)
for b = a:(a+n)
if sum(v(b)) > v % at this point im confused :/
total = sum(v(b));
ind = v(a);
else
total = sum(v(b))
end
end
end
end
Respuesta aceptada
Más respuestas (1)
James Metz
el 18 de Mzo. de 2020
Categorías
Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!