Проверить, образуют ли элементы массива неубывающую последовательность - C (СИ)

Узнай цену своей работы

Формулировка задачи:

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

Решение задачи: «Проверить, образуют ли элементы массива неубывающую последовательность»

textual
Листинг программы
#include <stdio.h>
 
//-----------------------------------------------------------------------------
int Check(int array[], size_t size)
{
   return size ? ((*array < 0) && (*array <= *(array + 1)) && Check(array + 1, size - 1)) : 1;
}
//-----------------------------------------------------------------------------
 
int main()
{
   int array[10];
   size_t i = 0;
 
   while (scanf("%d", &array[i]) && array[i] && (++i < 10)) { ; }
 
   printf("%s\n", (Check(array, i) ? "yes" : "no"));
 
   return 0;
}

Объяснение кода листинга программы

  1. Включаем стандартную библиотеку файлов в программу
  2. Функция Check() проверяет, является ли массив неубывающей последовательностью
  3. Если массив пуст, то возвращается 1, иначе функция рекурсивно вызывается для следующего подмассива
  4. В функции main() создается массив из 10 элементов и инициализируется нулями
  5. В цикле запрашиваем у пользователя ввод 10 целых чисел и сохраняем их в массиве
  6. Вызываем функцию Check() для проверки массива на неубывание
  7. Выводим на экран результат проверки yes или no
  8. Программа завершается без ошибок

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.091 из 5
Похожие ответы