b_k = 1;
while (b_k <= iv0[1]) {
h = vplus_data[0];
u1 = vmax->data[(int)((1.0 + (double)k) + 1.0) - 1];
if ((h <= u1) || rtIsNaN(u1)) {
minval_data_idx_0 = h;
} else {
minval_data_idx_0 = u1;
}
b_k = 2;
}
b_k = 1;
while (b_k <= iv0[1]) {
h = vmin->data[(int)((1.0 + (double)k) + 1.0) - 1];
if ((h >= minval_data_idx_0) || rtIsNaN(minval_data_idx_0)) {
} else {
h = minval_data_idx_0;
}
vplus_data[0] = h;
b_k = 2;
}
этот код сравнивается с мин функции, чтобы получить минимальное значение ч или u1, может кто-нибудь сказать мне, почему MATLAB генерировать такой синтаксис? почему цикл while, хотя я не вижу никаких изменений внутри блока while!Matlab с встроенным кодировщиком код
код MATLAB
v(k+1) = max(vmin(k+1), min(vplus, vmax(k+1)));
уведомление есть две петли для функции макс мин
Вероятно, этот способ является побочным эффектом того, как вы написали свой код Matlab. Можете ли вы опубликовать код Matlab? – shoelzer
'b_k' начинается с' 1' (в строке 'b_k = 1;' и становится '2' (в строке' b_k = 2; '), что явно является изменением внутри блока. Не знаете, почему это – Floris
Я отредактировал сообщение, что еще, что повторение второго цикла без изменения кода! – aah134