Как сравнить текущую итерацию в цикле с предыдущей?Сравните текущую итерацию с предыдущей, MATLAB
Например, я хочу видеть, является ли элемент в матрице, являющейся частью структуры, ниже, чем тот же самый элемент, но из предыдущей итерации (очевидно, это не те же значения, но то же самое элементы, просто разные итерации). Чтобы быть более ясным, мне нужно вызвать матричный элемент mystruct(h).field(j,1)
и посмотреть, находится ли этот элемент ниже mystruct(h-1).field(j,1)
.
a=rand(20,1);
field = 'field';
for h=1:20
value = 1.4*rand(20,1);
value1 = zeros(20,1);
mystruct(h) = struct(field,value);
NEWstruct(h) = struct(field,value1);
end
for j=1:20
if mystruct(1).field(j,1)<a(j,1)
NEWstruct(1).field(j,1)=mystruct(1).field(j,1);
else
NEWstruct(1).field(j,1)=a(j,1);
end
end
Теперь после этого я должен увидеть, если следующая итерация mystruct(2).field(j,1)
ниже предыдущей итерации NEWstruct(1).field(j,1)
, и если он есть, присвоить это значение NEWstruct(2).field(j,1)
. Если это не так, то она должна быть равна mystruct(1).field(j,1)
Пожалуйста, переформатируйте свой вопрос и опубликуйте минимальный пример. – thewaywewalk
отметил и отредактировал – theKingDidier