Софтуерно Инженерство
Loading...
thekeymaker1984 avatar thekeymaker1984 2 Точки

Обхождане на елементи на масив

Здравейте,

опитвам се да реша задачата за дължината на най-дългата нарастваща поредица от последователни елементи в редицата от числа.

Въвеждам n числа в масив и после се опитвам да сравнявам всяко едно със следващото чрез for (int j = 0; j <=array.Length-1; j++)  и if (array[j] > array[j + 1]), но проблем ми е че излизам извън масива  чрез j+1  и ми дава грешка.

Как да обходя масива и да сравнявам всеки един елемент със следващия го без дами да дава грешка.

Тагове:
supersane avatar supersane 233 Точки

Обхождай с един елемент по-малко, или иначе казано: for (int j = 0; j <=array.Length-2; j++)

0
thekeymaker1984 avatar thekeymaker1984 2 Точки

Ама така май ще изпусна последния елемент.

Опитвам се ето така да го направя. макар че засега имам грешка в логиката :)

for (int j = 0; j <=array.Length-2; j++)

{

if (array[j] > array[j + 1])

{

count++;

}

else

{

list.Add(count);

count = 0;

}

list.Add(count);

}

Console.WriteLine(list.Max());

 

}

0
supersane avatar supersane 233 Точки

Е как да го изпуснеш, като проверяваш с това: if (array[j] > array[j + 1]), и когато стигнеш array.Lenght-2 това, което удебелих ще вземе array.Lenght-1, което е последния елемнт.

0