Определить, какое число в заданной последовательности чисел встретится раньше: максимальное или минимальное - C (СИ)

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

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

Даны натуральное число n и целые числа x1, x2, ..., xn. Какое число в последовательности чисел xi встретится раньше: максимальное или минимальное. Если максимальных или минимальных чисел несколько, то должны быть учтены самые первые из них.

Решение задачи: «Определить, какое число в заданной последовательности чисел встретится раньше: максимальное или минимальное»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5. #define N 20
  6.  
  7. int main(void)
  8. {
  9.     srand(time(NULL));
  10.     int arr[N];
  11.     int i;
  12.     for (i = 0; i < N; i++)
  13.     {
  14.         printf("%d ", arr[i] = rand() % 100);
  15.     }
  16.     putchar('\n');
  17.     int max_pos = 0;
  18.     int min_pos = 0;
  19.     for (i = 1; i < N; i++)
  20.     {
  21.         if (arr[i] > arr[max_pos]) { max_pos = i; }
  22.         if (arr[i] < arr[min_pos]) { min_pos = i; }
  23.     }
  24.     puts(max_pos < min_pos ? "max" : "min");
  25.     return 0;
  26. }

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

В данном коде выполняются следующие действия:

  1. Подключаются необходимые библиотеки для работы со стандартными функциями, генерацией случайных чисел и временем.
  2. Определяется константа N, которая задает размер массива.
  3. В цикле генерируются случайные числа от 0 до 99 и записываются в массив arr.
  4. Выводится на экран весь массив через пробел.
  5. Затем происходит поиск максимального и минимального числа в массиве и сохраняются их позиции в переменные max_pos и min_pos соответственно.
  6. Если максимальное число находится на позиции max_pos, то оно сравнивается со всеми числами, начиная с этой позиции, и обновляется значение min_pos, если текущее число меньше максимального.
  7. Если минимальное число находится на позиции min_pos, то оно сравнивается со всеми числами, начиная с этой позиции, и обновляется значение max_pos, если текущее число больше минимального.
  8. Если максимальное число находится на позиции min_pos или min_pos больше N, то выводится сообщение min.
  9. Если минимальное число находится на позиции max_pos или max_pos больше N, то выводится сообщение max.
  10. Программа завершается возвратом 0.

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


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

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

6   голосов , оценка 4.167 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы