Роман Фамилия
Роман Фамилия

Люди добрые помогите решить задачку на языке СИ, буду очень благодарен

В массиве все элементы, стоящие после максимального, уменьшить на 1.
Пример: из массива A[5]: 3 2 1 5 4 должен получиться массив 3 2 1 5 3.

АБ
Алексей Буканов

max = A[0]; imax = 0;
for (int i = 0; i < 5; i++) if (A[ i ] > max) {max = A[ i ]; imax = i; }
for (i = imax + 1; i < 5; i++) A[ i ] -=1;

ТЗ
Татьяна Заборова

Идея такая
1) Поиск максимума
а) Задаем массив
б) Присваиваем какой-либо переменной, например, peremennaya max, минимальное значение... наверное, это ноль.
в) Далее с помощью цикла сравниваем каждый элемент массива с этой переменной max, и если оказывается, что какой-либо элемент больше чем эта переменная, то этот элемент будет значением макс и так до сих пор, пока цикл не пройдет все элементы массива
2) Уменьшить значения после максимума на единичку
2а) Нахождение номера максимального элемента
2аа) Есть переменная, которая задает номер массива. Ищем тот номер, при которым a = max

for (i=0; i=max то номер максимального элемента массива = i
иначе выполняем цикл заново

2б) Уменьшаем значения на единичку
2бб) for (i=номер максимального элемента массива, i=a + 1

Я бы сделала как-то так.

Похожие вопросы
Люди помогите решить задачку по физике, буду очень благодарен
задачка по паскалю, помогите пожалуста буду очень благодарен ^_^
Задачка на языке СИ помогите
Помогите решить задачку по физике, буду очень благодарен!!!
Добрые люди, помогите решить задачку пожалуйста!!!! буду очень признательна!
Помогите с задачкой по Си. находится в интервале [а, в] . На языке С
Пожалуйста решите задачку си++
Помогите мне с такой задачкой! Буду очень благодарен
Люди Добрые помогите пожалуйста) Буду очень благодарен)
Помогите решить на языке Си