Advertisement
ResistanceJke

Min Max Sum

Dec 24th, 2019
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.79 KB | None | 0 0
  1. /*Дан массив, состоящий из N целых чисел. Найдите минимальное и максимальное из них.
  2.  
  3. Если подходящих чисел несколько, то найдите самое левое минимальное и самое правое максимальное.
  4.  
  5. Затем найдите сумму положительных чисел между минимальным и максимальным включительно.
  6.  
  7. Входные данные
  8. Первая строка содержит целое число N (1 ≤ N ≤ 100) — размер массива.
  9.  
  10. Вторая строка содержит N целых чисел Ai ( - 100 ≤ Ai ≤ 100) — элементы массива.
  11.  
  12. Выходные данные
  13. Выведите одно целое число — сумму положительных элементов массива от минимального до максимального.*/
  14.  
  15. #include <iostream>
  16. #include <math.h>
  17. #include <stdio.h>
  18.  
  19. using namespace std;
  20.  
  21. int main()
  22. {
  23.     int arr[100];
  24.     int n, min = 0, max = 0;
  25.     int imin = 0, imax = 0;
  26.     int temp = 0;
  27.     cin >> n;
  28.     for (int i = 0; i < n; i++)
  29.     {
  30.         cin >> arr[i];
  31.     }
  32.     for (int i = 0; i < n; i++)
  33.     {
  34.         if (arr[i] < min)
  35.         {
  36.             min = arr[i];
  37.             imin = i;
  38.         }
  39.         if (arr[i] > max)
  40.         {
  41.             max = arr[i];
  42.             imax = i;
  43.         }
  44.     }
  45.     for (int i = 0; i < n; i++)
  46.     {
  47.         if (arr[i] == min)
  48.         {
  49.             imin = i;
  50.             break;
  51.         }
  52.     }
  53.     for (int i = n - 1; i > 0; i--)
  54.     {
  55.         if (arr[i] == max)
  56.         {
  57.             imax = i;
  58.             break;
  59.         }
  60.     }
  61.     if (imin > imax)
  62.     {
  63.         temp = imin;
  64.         imin = imax;
  65.         imax = temp;
  66.     }
  67.     temp = 0;
  68.     for (int i = imin; i <= imax; i++)
  69.     {
  70.         if (arr[i] >= 0)
  71.             temp = temp + arr[i];
  72.     }
  73.     cout << temp;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement