Сначала задаете переменные:
- текущий минимальный элемент (значение)
- текущий максимальный элемент (значение)
- текущий минимальный элемент (позиция в массиве)
- текущий максимальный элемент (позиция в массиве)
Инициализируете переменные: позиции задаете на -2, минимум на очень большое значение, которое можно ввести в вашей неназванной IDE, например, 10е25; а максимум на возможно наименьшее значение, например, -10е25.
Затем последовательно, в цикле, пробегаете каждый элемент массива. На каждом элементе массива проверяете, уж не является ли этот элемент больше (меньше) текущего максимального (минимального) значения. Если является, то обновляете переменные: текущее максимальное (минимальное) значение, а так же индекс в массиве.
После завершения цикла вы имеете в этих переменных все требуемые для вашего задания данные, выводите их так, как требуется по заданию.
Now playing: Hearts & Hand Grenades - I Hide
Дата: 2022-02-09
C/C++
Найдите сумму номеров минимального и максимального элементов
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
int i_min=0,i_max=0;
int n;
do
{
cout << "Введите размер массива: ";
cin >> n;
} while(n < 1);
int * A = new int[n];
srand(time(nullptr));
rand();
for(int x = 0; x < n; x++)
{
A[x] = rand() % 20 + 1;
cout << A[x] << ' ';
if(A[x] > A[i_max]) i_max = x;
if(A[x] < A[i_min]) i_min = x;
}
cout << endl << endl << i_max + 1 + i_min + 1 << endl;
/*
+ 1 добвляется, потому что индексы начинают отсчёт с нуля,
а мы привыкли считать номера элементов с единицы
*/
if(A == (int*) nullptr) return 1;
delete [] A;
A = (int*) nullptr;
return 0;
}
#include <ctime>
using namespace std;
int main()
{
int i_min=0,i_max=0;
int n;
do
{
cout << "Введите размер массива: ";
cin >> n;
} while(n < 1);
int * A = new int[n];
srand(time(nullptr));
rand();
for(int x = 0; x < n; x++)
{
A[x] = rand() % 20 + 1;
cout << A[x] << ' ';
if(A[x] > A[i_max]) i_max = x;
if(A[x] < A[i_min]) i_min = x;
}
cout << endl << endl << i_max + 1 + i_min + 1 << endl;
/*
+ 1 добвляется, потому что индексы начинают отсчёт с нуля,
а мы привыкли считать номера элементов с единицы
*/
if(A == (int*) nullptr) return 1;
delete [] A;
A = (int*) nullptr;
return 0;
}
Номеров каких минимального и максимального элемента? Вот массив
{0,1,0,1,0,1,0,1}. Какое значение суммы номеров минимального и максимального элементов должно быть выведено на экран?
{0,1,0,1,0,1,0,1}. Какое значение суммы номеров минимального и максимального элементов должно быть выведено на экран?
Похожие вопросы
- Заменить нулями элементы массива, которые расположены между первым минимальным и последним максимальным элементами масси
- Найти сумму нечетных элементов, стоящих на нечетных местах (то есть имеющих нечетные номера).
- Найти максимальный элементы в строке матрицы
- C++ как найти N-ый максимальный элемент масива?
- Работа с матрицами. Нужно найти сумму элементов каждой строки. Помогите пожалуйста ????????
- Найти максимальный элемент в квадратной матрице и сказать под главной диагональю он находится или нет
- Найти 10 максимальных элементов в матрице
- Составьте программу удаления столбца, содержащего максимальный элемент матрицы A[N][N] НА ЯЗЫКЕ СИ
- Си. Подсчитать количество появлений максимального элемента матрицы
- С++ Найти максимальный элемент массива. Не принимает задачу.