Осуществить сглаживание массива - C (СИ)
Формулировка задачи:
Здравствуйте.Кто может помогите написать программу в Си:
"
Осуществить сглаживание массива. Операция сглаживания массива осуществляется путём замены каждого элемента на среднее арифметическое всех его соседей.
" Решение задачи: «Осуществить сглаживание массива»
textual
Листинг программы
e=a[0];
for(i=1; i<n-1; i++)
{
k=a[i];
a[i]=(e+a[i+1])/2;
e=k;
}
Объяснение кода листинга программы
- В первой строке происходит инициализация переменной
eзначением первого элемента массиваa(a[0]). - Далее, в цикле, начиная со второго элемента массива
a(i=1) и до предпоследнего элемента (i<n-1), выполняются следующие действия: - Значение текущего элемента массива
a(k) сохраняется в переменнойe. - Значение следующего элемента массива
a(a[i+1]) не используется в данном цикле. - Значение переменной
eзаменяется на среднее арифметическое значенийeиa[i+1]. - Значение
eприсваивается значениюk. - Цикл повторяется до тех пор, пока не будет выполнено условие
i<n-1. - Последний элемент массива
aне подвергается сглаживанию. - Результатом выполнения данного кода будет сглаженный массив
a.