#include <iostream>
using namespace std;
const int MAX_SIZE = 20;
int main()
{
int n, a[MAX_SIZE]; // initialize array and its size
cin >> n; //
for (int i = 0; i < n; i++) // ===> array input
cin >> a[i]; //
int max = 0; // initializing a variable indicating the length of the longest sequence
int i;
int current = 0; // makes sure the each loop begins from where the last has concluded
do
{
int count = 0; // counter indicating the length of the sequence.. resets after each loop
for (i = current; a[i] <= a[i + 1] && i < n - 1; i++) // loops until a lower than the previous number is found or the array ends
{
count++;
}
current = i; // makes so that the next loop can start from where the last has concluded
if (count > max) max = count; // determines the longest "growing" sequence of numbers
} while (i < n); // when all of the array elements are checked the program is done
cout << max << endl;
return 0;
}
Мои навыки комментирования сосать, поэтому не будьте слишком тяжелы для меня. Я попытался как можно яснее объяснить, что хочу сделать с моим кодом из-за недоразумений в моих предыдущих вопросах.Длина нарастающей последовательности C++
TL; DR: Чтобы подвести итог, это (или, по крайней мере, должна быть) программа, которая находит самую длинную длину последовательности «растущих» чисел в массиве. Что означает «рост»? Последовательность, в которой каждое следующее число является либо четным, либо более высоким, чем предыдущее. Например, в 1 2 3 3 1 2
«растущая» последовательность равна 1 2 3 3
, а ее длина (каков должен быть выходной). 4. Однако по какой-то неизвестной причине при компиляции и вводе массива программа зависает, не выдавая никакого вывода. Любые идеи, что может это сделать? Спасибо за помощь в продвижении !
Пройдите через программу в отладчике. –
Добро пожаловать в переполнение стека! Просить людей обнаружить ошибки в коде не особенно продуктивно. Вы должны использовать отладчик (или добавить заявления печати), чтобы изолировать проблему, отслеживая ход вашей программы и сравнивая ее с тем, что вы ожидаете. Как только двое расходятся, вы нашли свою проблему. (И затем, если необходимо, вы должны построить [минимальный тестовый сценарий] (http://sscce.org).) –
@OliCharlesworth О, мне очень жаль. Спасибо, но что мне делать с моим вопросом? Удалить его или что-то еще? Из-за этого мне не нужна огромная волна downvotes. – user3213110