Е) Обмен местами

Задача 14. Поменять местами первый и последний элемент массива.

 

При обмене, чтобы не потерять одно из значений, потребуется дополнительная переменная:

 

p=a[0];

a[0]=a[n-1];

a[n-1]=p;

 

ж) Поиск минимума/максимума

Задача 15. Найти в массиве наименьший элемент и его позицию.

 

В подобных задачах нахождения "самого-" в каком-нибудь смысле элемента используется та же идея, что и в спорте при определении рекорда: каждый очередной результат сравнивается с текущим рекордом, и если он "лучше", то он и становится новым значением рекорда, а иначе рекорд не меняется. За начальное значение рекорда принимается первый результат.

 

min=a[0]; k=0;

for (i=0; i<n; i++)

if (a[i]<min)

{ min=a[i]; k=i; }

 

Эту же программу можно переписать и короче:

 

for (i=k=0, min=a[0]; i<n; i++)

if (a[i]<min)

min=a[k=i];