Как и к этому вопросу: Turn while loop into math equation?, у меня есть следующий вложенный цикл, который я пытаюсь преобразовать в математическое уравнение, поскольку мне нужно записать это в формате, который не похож на код. Я считаю, что мне понадобится какое-то уравнение суммирования.Как преобразовать уравнение с декрементирующей индексацией в математическое уравнение с суммированием?
Вот код:
int num = 0;
for (int i = nr - 1; i >= 0; i--) {
for (int j = nc - 1; j >= 0; j--) {
ela[i][j] = num;
eha[i][j] = num + ea[i][j] - 1;
num += ea[i][j];
}
}
Я знаю, что Суммирование начинается с нижней границы и по-прежнему более высокий предел, так что я не совсем уверен, как применять суммирование здесь, так как я начать с более высокий индекс и продолжать снижение индекса.
Я не уверен, почему я получаю downvoted, поскольку вопрос, на который я ссылаюсь, очень похож на мой, имеет те же теги и поддерживается 14 раз. Прошу прокомментировать ниже, если я смогу улучшить свой вопрос.
Update:
Я был в состоянии изменить формулу следующим образом:
nr = 50;
nc = 10;
num = sum[ea[i,j],i=0,nr-1,j=0,nc-1]; // correct based upon nr, nc and ea
for (int i = 0; i < nr; i) {
for (int j = 0; j < nc; j++) {
num = num - ea[i,j];
ela[i][j] = num;
eha[i][j] = num + ea[i,j] - 1;
}
}
Для чего важны 'ELA' и' EHA'? Что такое 'ea'? – LogicStuff
@LogicStuff Я думаю, что это то, что он хотел бы выразить как функции. – SirGuy
@LogicStuff, ela и eha - переменные, заданные этим циклом. – Veridian