Как сравнить значения в одном массиве? - PullRequest
0 голосов
/ 04 мая 2020

Как я могу сравнить элементы в одном массиве? если следующее число в массиве больше предыдущего, тогда передайте эти два значения дальше ... И соответственно, если это не так, передайте их другому методу ...

double[] ipp = { 0.255, 0.232, 0.618, 0.713 };

I пытаюсь это сделать, но массив выходит за пределы числа индексов

for (int i = 0; i < ipp.Length; i++)
{
    if (ipp[i+1] > ipp[i]) // problem 
    {
        // ----> send this 
        //(ipp[i+1];ipp[i]) values 
        //to another method 
    }
}

1 Ответ

2 голосов
/ 04 мая 2020

Проблема в проверке верхней границы вашего for l oop. Когда i = ipp.Length - 1 и вы получаете доступ к элементу массива ipp[i + 1], вы получаете доступ к элементу за пределами границ массива, поэтому возникает проблема.

Необходимо изменить проверку верхней границы на i < ipp.Length - 1:

for (int i = 0; i < ipp.Length - 1; i++)
{
    if (ipp[i + 1] > ipp[i])
    {
        ...
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...