#include
#include
using namespace std;
/* Searching of the minimal sequence of the even numbers.
* ARGUMENTS:
* - array of the numbers:
* int mainArray[];
* - number of elements in the array:
* int numOfEl;
* RETURNS: None.
*/
void MinSeqOfNum(int mainArray[], int numOfEl)
{
int
minSeqLenght = numOfEl + 1, // минимальная длина последовательности
seqLenght = 1, // длина текущей последовательности
numEnd = 0; // номер элемента, на котором заканчивается последовательность
/* Цикл обработки массива */
for (int i = 1; i < numOfEl; i++)
{
if (mainArray[i] < mainArray[i - 1] && mainArray[i] % 2 == 0 && mainArray[i - 1] % 2 == 0)
seqLenght++;
else
{
if (seqLenght < minSeqLenght && seqLenght != 1)
minSeqLenght = seqLenght, numEnd = i;
seqLenght = 1;
}
}
/* Дополнительная проверка на случай, если минимальная последовательность * закончилась на последнем элементе массива */
if (seqLenght < minSeqLenght && seqLenght != 1)
minSeqLenght = seqLenght, numEnd = numOfEl;
if (minSeqLenght != numOfEl + 1)
{
cout << endl << endl << "Minimal sequence = " << minSeqLenght << endl << "Group: " << endl;<br>
/* Вывод группы с минимальной длиной */
for (int i = numEnd - minSeqLenght; i < numEnd; i++)
cout << mainArray[i] << "; ";<br> }
else
cout << endl << endl << "There is no such sequence exists..." << endl;<br>} /* End of the 'MinSeqOfNum' function */
/* Main program function.
* ARGUMENTS: None.
* RETURNS:
* (int) errors level for operation system.
*/
int main()
{
srand(time(0));
int
numOfEl, // кол-во элементов в массиве
*mainArray; // основной массив
/* Инициализация кол-ва элементов массива */
cout << "Input number of the elements: ";<br> cin >> numOfEl;
/* Выделение памяти под массив */
if (numOfEl > 0)
mainArray = new int[numOfEl];
else
{
cout << "Error! Number of the elements cannot be negative!";<br> return 0;
}
/* Инициализация основного массива случайными значениями */
for (int i = 0; i < numOfEl; i++)
mainArray[i] = rand() % 1000;
/* Инициализация основного массива пользовательскими значениями */
/*
for (int i = 0; i < numOfEl; i++)
cin >> mainArray[i];
*/
/* Вывод массива */
for (int i = 0; i < numOfEl; i++)
cout << mainArray[i] << "; ";<br>
/// Поиск последовательности убывающих четных чисел /// MinSeqOfNum(mainArray, numOfEl);
system("pause");
return 0;
} /* End of the 'main' function */