Наименьший член последовательности заменить целой частью среднего арифметического всех членов - Turbo Pascal (33754)
Формулировка задачи:
Даны целые числа a1, a2, ..., an. Наименьший член последовательности a1, a2, ..., an заменить целой частью среднего арифметического всех членов, остальные члены оставить без изменения. Если в последовательности несколько членов со значением min(a1, a2, ..., an), то заменить последний по порядку.
Решение задачи: «Наименьший член последовательности заменить целой частью среднего арифметического всех членов»
textual
Листинг программы
uses crt; var n,sum,i,j,min,sr:integer; a: array [1..1000] of integer; begin clrscr; write('vvedite kol-vo elem: '); readln(n); write('vvedite elementi: '); min:=32767; for i:=1 to n do begin read(a[i]); sum:=sum+a[i]; if a[i]<=min then begin min:=a[i]; j:=i; end; end; sr:=trunc(sum/n); a[j]:=sr; for i:=1 to n do write(a[i]:4,' '); readln; end.
Объяснение кода листинга программы
- В первой строке кода используется библиотека crt, которая является стандартной для языка Turbo Pascal.
- Переменные n, sum, i, j, min и sr объявлены. Переменная n представляет собой целочисленную величину, которая будет использоваться для хранения количества введенных пользователем элементов. Переменная sum также является целочисленной и будет использоваться для хранения суммы всех введенных пользователем элементов. Переменная i представляет собой целочисленную величину, которая будет использоваться для перебора элементов массива a. Переменная j также является целочисленной и будет использоваться для хранения индекса элемента, который был заменен на целую часть среднего арифметического всех элементов. Переменная min представляет собой целочисленную величину и будет использоваться для хранения наименьшего члена последовательности.
- В строке 11 происходит чтение первого элемента из массива a. Значение этого элемента сохраняется в переменной a[i].
- В строке 12 происходит расчет среднего арифметического всех элементов. Для этого значение переменной sum делится на значение переменной n.
- В строке 13 происходит проверка, является ли текущий элемент (a[i]) наименьшим членом последовательности. Если это так, то значение переменной min обновляется, а переменная j устанавливается равной i.
- В строке 14 происходит запись значения переменной sr (целой части среднего арифметического) в массив a.
- В строке 15 происходит вывод на экран значения переменной n.
- В строке 16 происходит вывод на экран значения переменной sum.
- В строке 17 происходит вывод на экран значения переменной min.
- В строке 18 происходит вывод на экран значения переменной sr.
- В строке 19 происходит вывод на экран значения каждого элемента массива a.
- В строке 20 происходит вывод на экран значения переменной n.
- В строке 21 происходит выход из программы.