Народ,помогите написать программу на dev c++,объяснить)
10-11 класс
|
В отчете предоставить блок-схемы всех
функций, текст программы.
Задача : В целочисленном массиве Х(N) удалить все элементы, расположенные
между максимальным и минимальным элементами. Найти среднее
арифметическое элементов массива до и после удаления. В программе
написать функции: удаления элемента, поиска номеров минимального и
максимального элементов, определения среднего арифметического
элементов массива.
#include<iostream>
float average(int* a, int first, int last)
{
int s = 0;
for(int i = first; i <= last; ++i)
s += a[i];
return s * 1. / (last - first + 1);
}
int min_i(int* a, int n)
{
int m = a[0];
int numb = 0;
for(int i = 1; i < n; ++i)
if(m > a[i])
{
m = a[i];
numb = i;
}
return numb;
}
int max_i(int* a, int n)
{
int m = a[0];
int numb = 0;
for(int i = 1; i < n; ++i)
if(m < a[i])
{
m = a[i];
numb = i;
}
return numb;
}
int main()
{
int N;
std::cin >> N;
int X[N];
for(int i = 0; i < N; ++i)
std::cin >> X[i];
std::cout << "Average of whole array: " << average(X, 0, N - 1) << std::endl;
int first = min_i(X, N);
int last = max_i(X, N);
if(first > last)
{
int temp = first;
first = last;
last = temp;
}
if(last - first == 0 || last - first == 1)
std::cout << "Average of shorter array: " << average(X, 0, N - 1) << std::endl;
else
{
int delta = last - first;
for(int i = last; i < N; ++i)
X[i - delta + 1] = X[i];
std::cout << "Average of shorter array: " << average(X, 0, N - delta) << std::endl;
}
}
Другие вопросы из категории
В3. Заранее спасибооо:) срочнооо
вычислите как сумму площадей двух треугольников.
переменных а, б, в, г. Объясните, что происходит, если некоторые значения одинаковые?
Читайте также
добрый вечер, всем. помогите, пожалуйста, написать программу на Ассемблере.
задание:
Создать программу на языке Ассемблер, что позволяет организовать вычисления над элементами массивов
Объединить два массива 8-битных целых чисел со знаком. Сначала элементы второго затем первого.
заранее огромное спасибо всем!
13.
Нужно написать программу на цикле с предусловием, на Паскале.
Дано натуральное число n. Написать программу вычисляющую сумму
доброй ночи, уважаемые программисты и успевающие в учебе студенты. помогите, пожалуйста, написать программу на C++ (в визуальной вкладке).
ВОТ ЗАДАНИЕ:
дано три переменные вещественного типа. если их значения упорядочены по возрастанию или убыванию, то удвоить их; иначе заменить значение каждой переменной на противоположное. вывести значения переменных.
я прикрепила несколько тестовых файлов (блокнот) в которых есть несколько вариантов решение этого задание (то есть коды программ), а вы скажите какой из них лучше всего подходит, а также скажите какие компоненты нужно кинуть на форму-дизайн (то есть какие кнопки, и что на них писать). в этих 3 файлов есть написанный код программы, нужно написать: на какие кнопки что писать и какой вариант решение больше подходит.
заранее огромное спасибо всем за помощь!!!
рдинат. Я поняла, что нужно найти их длины (формулы я знаю), а правильно написать программу не могу