Позволяет принимать Barebones того, что вы пытаетесь понять
int numbers[] = { 92, -108, 2, 120, 67, 4, -81, 9, 88, 1 };
int min, max;
min = max = numbers[0];
for (int i = 1; i < 10; i++) {
if (numbers[i] < min)
min = numbers[i];
if(numbers[i] > max){
max = numbers[i];
}
}
Во-первых, вы инициализируете массив чисел тем, что у вас есть в пределах {}
. Таким образом, у вас есть массив длиной 10. Затем мы объявляем два значения min и max int
. Значения как таковые:
numbers[0] = 92;
numbers[1] = -108;
numbers[2] = 2;
numbers[3] = 120;
numbers[4] = 67;
numbers[5] = 4;
numbers[6] = -81;
numbers[7] = 9;
numbers[8] = 88;
numbers[9] = 1;
Следующий оператор объявляет min
и max
в качестве первого элемента массива (0 является первым, вплоть до размера-1 для массивов, которые в данном случае 9).
min = numbers[0] (92).
max = numbers[0] (92).
Следующая часть представляет собой цикл for, в который входят все вычисления. Цикл for говорит о начале int
с именем i
в 1. Каждый раз, когда вы проходите через этот цикл, сравнивайте булево значение в середине, которое в этом случае равно i < 10
, что означает, что i
меньше 10, оставаясь в цикле , После каждой итерации выполните третью операцию, которая в этом случае равна i++
, что означает приращение i
переменной на 1.
Отлично, мы проходим цикл for. Давайте начнем с первой итерации, что означает, что i
равно 1. Мы берем элемент SECOND массива numbers
(0 - первый элемент, помните?) И сравнивая это с текущим значением min
(что является первым элементом массива, 92).
Хорошо, если вы посмотрите на значения, -108, который является вторым элементом в массиве, меньше мин. Поэтому min
теперь устанавливается на первый элемент массива. Затем мы сравниваем -108 и видим, если он больше max
, что опять равно 92. -108 НЕ больше 92, поэтому он пропускает этот оператор if.
i = 1
min = numbers[1] (-108).
max = numbers[0] (92).
Проходит вторую итерацию цикла for. Поскольку мы дошли до конца, мы делаем заявление i++
. Теперь мы находимся на i
= 2. Давайте проверим, чтобы мы не выходили. Является ли значение i
менее 10? Да так давайте продолжим с вершины!
Это номера [2] (что на 2) меньше текущего значения min
(-108)? Нет, пропустите этот оператор if. числа [2] больше текущего значения max (92)?Нет, давайте еще раз взглянуть на значения:
i = 2
min = numbers[1] (-108)
max = numbers[0] (92)
Далее, так как мы находимся на дне, сделать i++
. i
теперь равны 3.
Это продолжается весь путь до конца до i
= 9, так как при i
= 10, он выходит из цикла для связи с этим средним утверждением в течение цикла, в пункте выхода.
номера [i] ссылаются на индивидуальное число в массиве. поэтому, например, числа [0] равны 92, числа [1] - -108 и т. д. – terpinmd