1) Если изначальный массив НЕ дан, т.е необходимо его заполнить случайными числами
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void GetMaxAndMinIndex(int* data,int* MaxIndex,int* MinIndex) {
for (int i = 0; i < 200; ++i) {
if (data[i] > data[i + 1]) {
*MaxIndex = i;
}
if (data[i] < data[i + 1]) {
*MinIndex = i;
}
}
}
void SearchSrAr(int* data,int* MaxIndex,int* MinIndex) {
int tmpI = 0;
int TmpNum = 0;
for (int i = *MinIndex; i < *MaxIndex; ++i) {
TmpNum = TmpNum + data[i];
tmpI++;
}
double output = TmpNum / tmpI;
cout <<"Ваше число "<< output;
}
int main() {
setlocale(LC_ALL, "Russian");
int* data = new int[200];
int MaxIndex = 0, MinIndex = 100;
srand(time(NULL));
for (int i = 0; i < 200;++i) {
data[i] = rand() % 100;
}
GetMaxAndMinIndex(data, &MaxIndex, &MinIndex);
SearchSrAr(data, &MaxIndex, &MinIndex);
delete[] data;
}
И если этот массив и его размер нам известны
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void GetMaxAndMinIndex(int* data,int* MaxIndex,int * n,int* MinIndex) {
for (int i = 0; i < *n; ++i) {
if (data[i] > data[i + 1]) {
*MaxIndex = i;
}
if (data[i] < data[i + 1]) {
*MinIndex = i;
}
}
}
void SearchSrAr(int* data,int* MaxIndex,int* MinIndex) {
int tmpI = 0;
int TmpNum = 0;
for (int i = *MinIndex; i < *MaxIndex; ++i) {
TmpNum = TmpNum + data[i];
tmpI++;
}
double output = TmpNum / tmpI;
cout <<"Ваше число "<< output;
}
int main() {
setlocale(LC_ALL, "Russian");
int n;
cout << "Введите количество чисел в массиве " << endl;
cin >> n;
int* data = new int[n];
int MaxIndex = 0, MinIndex = 100;
cout << "Введите ваш массив " << endl;
for (int i = 0; i < n; ++i) {
cin >> data[i];
}
GetMaxAndMinIndex(data, &MaxIndex,&n, &MinIndex);
SearchSrAr(data, &MaxIndex, &MinIndex);
delete[] data;
}
Объяснение:
Код на с++
Шапка
Форма блока шапки
Именно с шапки начинается любой скрипт. Блок шапка — это некое событие (например щелчок по зелёному флагу), которое вызвано взаимодействием пользователя с программой. Они скруглены сверху и имеют выступ снизу для прикрепления других блоков. Существуют 7 блоков шапок, 6 из которых в категории события, 1 в категории управления.
Обычный блок
Форма обычного блока
Обычные блоки – это блоки команд. Они прикрепляются сверху выступом и прикрепляют снизу выступом вовнутрь, то есть остальные блоки могут быть помещены как сверху, так и снизу обычных блоков. Всего насчитывают 71 такой блок – это самая большая категория блоков.
Логический блок
Форма логического блока
Логические блоки – это условия, определяющие правильно или ложно заданное условие. Спроси своего друга «2 умножить на 2 будет 4?» и попроси его ответить только «Да» или «Нет». Твой друг станет этаким логическим блоком. Они имеют форму шестиугольника и всего насчитывается 12 таких блоков.
Репортёр
Форма блоков репортёров
Блоки репортёры дают какие-либо значения. Они могут быть как числами, так и строками. Например, спроси друга: "Сколько будет 2 + 2?". Он ответит "4". Твой друг станет этаким репортёром. Кстати, репортёрами могут быть и переменные. Форма репортёров – закруглённые прямоугольники. Всего насчитывают 30 таких блоков, не считая репортёров переменных и списков.
Обвивающий блок
Форма обвивающего блока
Обвивающие блоки – это блоки повторения или блоки условий. Их насчитывают всего 5 и их можно найти во вкладке "Управление". Имеют выступ вовнутрь сверху и простой выступ внутри и снаружи.
Закрывающий блок
Форма закрывающего блока
Закрывающие блоки заканчивают скрипт или все процессы. Имеют выступ вовнутрь сверху и не могут иметь прикреплённых блоков снизу. Всего существует 2 закрывающих блока, и оба находятся во вкладке "Контроль".
Категории блоков
Объяснение: