Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <limits.h>
- //Функции максимума и минимума
- #define MIN(a,b) (((a)<(b))?(a):(b))
- #define MAX(a,b) (((a)>(b))?(a):(b))
- //Максимальный размер массива
- #define n 40
- //Форма указателя-переменной
- int main()
- {
- int elementsAmount = 0; //Количество элементов в массиве
- //Вводим количество элементов
- printf("n>");
- scanf("%d", &elementsAmount);
- //Проверяем количество элементов
- if (elementsAmount > n || elementsAmount < 1)
- {
- //Выводим ошибку
- printf("n должно быть <= %d", n);
- //Выходим из программы
- return 0;
- }
- //Инициализируем массив
- int arr[n] = {};
- //Вводим элементы массива
- for (int i = 0; i < elementsAmount; i++)
- scanf("%d", &arr[i]);
- printf("Исходные данные:\n");
- for (int i = 0; i < elementsAmount; i++)
- printf("%d) %d\n", i, arr[i]);
- int *minP = arr,
- *maxP = arr;
- for (int i = 0; i < elementsAmount; i++)
- {
- if (arr[i] > *(maxP))
- maxP = &arr[i];
- if (arr[i] < *(minP))
- minP = &arr[i];
- }
- int it = 0;
- int sum = 0;
- for (int *i = MIN(minP, maxP); i <= MAX(minP, maxP); i++)
- {
- sum += *(i);
- it++;
- }
- printf("Результат: %lf", (double)sum/(double)it);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment