Advertisement
Guest User

Untitled

a guest
Nov 21st, 2019
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.09 KB | None | 0 0
  1. #include <iostream>                             // Консольный ввод/вывод
  2.  
  3. using namespace std;                            // cin, cout и т.д.
  4.  
  5. void fill(int *arr, int size) {                 // Заполнение массива
  6.     cout << "Zapolnenie massiva:" << endl;
  7.     for (int i = 0; i < size; i++) {
  8.         cout << "arr[" << i << "] = ";
  9.         cin >> arr[i];
  10.     }
  11. }
  12.  
  13. void print(int *arr, int size) {                // Вывод массива на экран
  14.     cout << "Massiv:" << endl;
  15.     for (int i = 0; i < size; i++)
  16.         cout << arr[i] << " ";
  17.     cout << endl;
  18. }
  19.  
  20. int min_search(int *arr, int size) {            // Поиск номера минимального элемента
  21.     int min = arr[0], minnum = 0;               // min - значение мин. элемента, minnum - номер мин. элемента
  22.     for (int i = 1; i < size; i++)
  23.         if (arr[i] < min) { min = arr[i]; minnum = i; }
  24.     return minnum;
  25. }
  26.  
  27. int max_search(int *arr, int size) {            // Поиск номера максимального элемента
  28.     int max = arr[0], maxnum = 0;               // max - значение макс. элемента, maxnum - номер макс. элемента
  29.     for (int i = 1; i < size; i++)
  30.         if (arr[i] > max) { max = arr[i]; maxnum = i; }
  31.     return maxnum;
  32. }
  33.  
  34. int sum(int *arr, int size) {                   // Сумма элементов до минимального и после максимального элементов
  35.     int i, sum = 0;    
  36.     int min = min_search(arr, size), max = max_search(arr, size);
  37.     cout << endl << min << endl << max << endl;
  38.     for (i = min - 1; i >= 0; i--)
  39.         sum += arr[i];
  40.     for (i = max + 1; i < size; i++)
  41.         sum += arr[i];
  42.     return sum;
  43.  
  44. }
  45.  
  46. int main() {
  47.     int size;                                   // size - размер массива
  48.     cout << "Razmer massiva = ";
  49.     cin >> size;
  50.     int *arr = new int[size];                   // Создание динамического массива
  51.     fill(arr, size);                            // Заполнение массива
  52.     print(arr, size);                           // Вывод его на экран
  53.     cout << "Summa elementov do minimalnogo elementa i posle maximalnogo = " << sum(arr, size);     // Вывод суммы на экран
  54.     return 0;
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement