• Предмет: Информатика
  • Автор: nika20051103melnik
  • Вопрос задан 1 год назад

ТЕРМІНОВО!!!!!!!!!
С/С++
Написати програму з функціями, яка:
а) знаходить середнє арифметичне негативних елементів списку Р;
б) видаляє зі списку Р значення менші, заданого користувачем;
в) визначає кількість елементів у списку Р.

Ответы

Ответ дал: 07scienceyards
1

Відповідь:#include <iostream>

#include <list>

using namespace std;

// Функція для знаходження середнього арифметичного негативних елементів списку

double findAverageNegative(list<int> &lst) {

double sum = 0.0;

int count = 0;

for (auto it = lst.begin(); it != lst.end(); ++it) {

if (*it < 0) {

sum += *it;

count++;

}

}

return (count > 0) ? (sum / count) : 0.0;

}

// Функція для видалення зі списку значень менших, ніж задано користувачем

void removeLessThan(list<int> &lst, int val) {

lst.remove_if([val](int x) { return x < val; });

}

// Функція для підрахунку кількості елементів у списку

int countElements(list<int> &lst) {

return lst.size();

}

int main() {

list<int> myList {1, -2, 3, 4, -5, 6, -7, 8, -9, 10};

// a) Знаходимо середнє арифметичне негативних елементів списку

double avg = findAverageNegative(myList);

cout << "Середнє арифметичне негативних елементів: " << avg << endl;

// б) Видаляємо зі списку значення менші, ніж задано користувачем

int val;

cout << "Введіть значення: ";

cin >> val;

removeLessThan(myList, val);

// в) Визначаємо кількість елементів у списку

int count = countElements(myList);

cout << "Кількість елементів у списку: " << count << endl;

return 0;

}

Пояснення:

Похожие вопросы