Предмет: Информатика, автор: orestyakobchuk

Знайти амплітуду значень у масиві. (Написати шаблонну функцію). Амплітуда - різниця найбліьшого й наменшого значень.c++

Ответы

Автор ответа: ostapvitovskij
0

Ось приклад шаблонної функції для пошуку амплітуди значень у масиві:

c++

Copy code

#include <iostream>

template <typename T, size_t N>

T getAmplitude(T (&arr)[N]) {

   T maxVal = arr[0];

   T minVal = arr[0];

   for (size_t i = 0; i < N; ++i) {

       if (arr[i] > maxVal) {

           maxVal = arr[i];

       }

       if (arr[i] < minVal) {

           minVal = arr[i];

       }

   }

   return maxVal - minVal;

}

int main() {

   int arr1[] = {1, 5, 10, 3, -2, 8};

   double arr2[] = {3.14, 2.71, 0.0, -1.0, 5.5};

   std::cout << "Amplitude of arr1: " << getAmplitude(arr1) << std::endl;

   std::cout << "Amplitude of arr2: " << getAmplitude(arr2) << std::endl;

   return 0;

}

У цьому прикладі функція findAmplitude приймає масив будь-якого типу даних та знаходить максимальне та мінімальне значення у масиві, після чого повертає різницю між цими значеннями (тобто амплітуду). Зверніть увагу, що масив передається у функцію за допомогою посилання на масив (тобто T (&arr)[N]), що дозволяє функції працювати з масивом без його копіювання. Також варто зауважити, що для знаходження максимального та мінімального значень масиву використовуються функції std::max_element та std::min_element з бібліотеки <algorithm>.

Похожие вопросы
Предмет: Окружающий мир, автор: minecraftpochta00