Ниже представлен фрагмент программы, обрабатывающей) одномерный) целочисленный) массив с
индексами от 0 до 10 Известно, что в начале выполнения этого фрагмента в массиве находилась
возрастающая последовательность чисел, то есть A[0] < A[1] < … < A[10]. Какое наименьшее
значение может иметь переменная s после выполнения данной) программы?
s := 32;
n := 10;
for i:=0 to n-1 do begin
s:=s+A[i+1]-A[i]+1
end;
Объясните, почему в ответах 52, а у меня выходит 34?
Т.е минимальная разница между двумя соседними числами равна 1, следовательно s:=32+A[10]-A[9]+1=32+1+1=34

6 Сен 2019 в 04:41
483 +2
0
Ответы
1

Если изначально в массиве находилась возрастающая последовательность чисел, то минимальное значение переменной s после выполнения программы будет 34, а не 52.

Давайте разберемся, как получается значение 34:

Изначально s равно 32.В цикле проходим по массиву от 0 до 9 (n-1), таким образом последний элемент массива не учитывается.На каждом шаге прибавляем к s разницу между двумя соседними элементами массива (A[i+1]-A[i]) и еще 1.Так как минимальная разница между двумя соседними числами равна 1, то на последнем шаге получаем, что s = 32 + (A[10] - A[9]) + 1 = 32 + 1 + 1 = 34.

Таким образом, минимальное значение переменной s после выполнения программы должно быть равно 34.

20 Апр в 03:33
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 83 722 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир