Поиск наименьшего элемента в массиве элементы которого вводятся с клавиатуры - C (СИ)

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

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

Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <stdbool.h>
  4. #include <math.h>
  5. #include <locale.h>
  6. #define A 10
  7. int main()
  8. {
  9. setlocale(LC_CTYPE,"Russian");
  10. int j,i,min,M[A];
  11. printf("Введите элементы массива \n");
  12. for(i=0;i<10;i++)
  13. {
  14. printf("[%i]=",i+1);
  15. scanf ("%d",&M[i]);
  16. }
  17. getchar();
  18. return 0;
  19. }
не могу сообразить как сделать так чтобы программа нашла наименьший элемент массива и сумму элементов массива, расположенных между первым и вторым отрицательными элементами и

Решение задачи: «Поиск наименьшего элемента в массиве элементы которого вводятся с клавиатуры»

textual
Листинг программы
  1. int min_value(int* mas, int count) {
  2.     int ret_value, i;
  3.     for(i = 1, ret_value = *mas; i < count; ++i)
  4.         if(i[mas] < ret_value)
  5.             ret_value = i[mas];
  6.     return ret_value;
  7. }
  8.  
  9. int my_sum(int* mas, int count) {
  10.     int flag, i, total_sum;
  11.     for(flag = i = total_sum = 0; i < count; ++i)
  12.         if(i[mas] < 0 && ++flag == 2)
  13.             break;
  14.         else if(flag == 1)
  15.             total_sum += i[mas];
  16.     return flag == 2 ? total_sum : - 1;
  17. }

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

В первом функции min_value происходит поиск наименьшего элемента в массиве. Для этого используется цикл for, который проходит по всем элементам массива, начиная со второго. Переменная ret_value инициализируется значением первого элемента массива. Если в процессе прохода по массиву будет найден элемент с меньшим значением, то значение переменной ret_value будет обновлено. В конце функции возвращается найденное наименьшее значение. Во второй функции my_sum происходит поиск суммы всех отрицательных элементов в массиве. Для этого также используется цикл for, который проходит по всем элементам массива. Переменные flag и total_sum инициализируются нулевыми значениями. Если текущий элемент меньше нуля, то значение переменной flag увеличивается на единицу. Если значение переменной flag становится равным двум, то из цикла выходит и начинается следующая итерация цикла. Если значение переменной flag становится равным одному, то к переменной total_sum прибавляется значение текущего элемента. В конце функции возвращается либо сумма отрицательных элементов, либо -1, если отрицательных элементов не было.

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


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

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

8   голосов , оценка 4.125 из 5

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

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

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