Решить в с++ задан массив z(n) целых чисел. найти максимальный элемент массива и если это простое число - удалить все элементы равные максимальному значению. определить среднее арифметическое положительных элементов массива после удаления. упорядочить массив по убыванию модулей.
139
347
Ответы на вопрос:
#include < iostream> #include < string> #include < cstdlib> #include < algorithm> using namespace std; typedef unsigned short int usi; int* fillarray(string name, int s); int maxarray(int[], int s); bool isprime(int); void deleteallequalto(int[], int s, int value); float averageofpositive(int[], int s); void printarray(int[], int s); bool sortbydescabs(int i, int j) { return abs(i) > abs(j); } int main() { setlocale(lc_all, "russian"); usi n; cout < < "n = "; cin > > n; int* z = fillarray("z", n); int max = maxarray(z, n); if ( isprime(max) ) { deleteallequalto(z, n, max); } float avg = averageofpositive(z, n); cout < < "среднее: " < < avg < < '\n'; sort(z, z + n, sortbydescabs); cout < < "z[" < < n < < "]: "; printarray(z, n); return 0; } int* fillarray(string name, int s) { int array[s]; for (int i = 0; i < s; i++) { cout < < name < < "[" < < i < < "] = "; cin > > array[i]; } return array; } int maxarray(int a[], int s) { int max = a[0]; for (int i = 1; i < s; i++) { if (a[i] > max) max = a[i]; } return max; } bool isprime(int n) { if (n < 2) return false; if (n == 2) return true; if (n % 2 == 0) return false; for (int i = 3; (i*i) < = n; i += 2) { if (n % i == 0 ) return false; } return true; } void deleteallequalto(int a[], int s, int value) { for (int i = 0; i < s; i++) { if (a[i] == value) a[i] = 0; } } float averageofpositive(int a[], int s) { unsigned int sum = 0, count = 0; for (int i = 0; i < s; i++) { if (a[i] > 0) { sum += a[i]; count++; } } return (sum / count); } void printarray(int a[], int s) { for (int i = 0; i < s; i++) { cout < < a[i] < < ' '; } }
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
СекретнаяДевушка31.10.2022 06:01
-
artemlis130220004.05.2021 06:30
-
vodzinskiyaleksandr14.05.2020 14:10
-
сойдет220.05.2021 04:14
-
resdo998810.03.2020 14:11
-
podzolkova5421.02.2021 18:19
-
azalhanovahalid05.06.2022 02:23
-
вера2007555502.10.2022 07:56
-
sofirzhk01.02.2022 12:11
-
dhjejdj24.12.2020 22:55
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.