Среднее арифметическое отрицательных элементов массива. Замена на него минимального элемента (КуМир)

Тема: 
Массивы

Пусть дан массив целых чисел, заполняемый пользователем.

  1. Считать очередной элемент.
  2. Если он меньше нуля, то увеличить переменную count на 1 (счетчик количества отрицательных элементов) и прибавить значение к переменной summa (накопление общей суммы отрицательных элементов).
  3. Если обрабатываемый на данный момент отрицательный элемент меньше того, чей индекс хранится в переменной min_id, то присвоить min_id индекс текущего элемента.
  4. Если переменная count не равна 0, значит отрицательные элементы в массиве есть и имеет смысл вычислять среднее арифметическое.
  5. Находится среднее арифметическое путем деления общей суммы отрицательных элементов на их количество.
  6. Присваивается среднее арифметическое минимальному элементу массива, индекс которого хранится в переменной min_id. Поскольку массив целочисленный, а среднее арифметическое дробное число, то оно округляется до целого.

алг mean_negative
нач
  цел таб arr[1:10]
  цел count, summa, min_id, i
  вещ mean
 
  count := 0
  summa := 0
  min_id := 1
 
  нц для i от 1 до 10
    ввод arr[i]
    если arr[i] < 0 то 
      count := count + 1
      summa := summa + arr[i]
      если arr[i] < arr[min_id] то
        min_id := i
      все
    все
  кц
 
  если count <> 0 то 
    mean := summa / count
    вывод "Среднее арифм. отриц. элементов: " + вещ_в_лит(mean) , нс
    arr[min_id] := int(mean)
    нц для i от 1 до 10 
      вывод arr[i]
      вывод ", "
    кц
  все
кон

Пример выполнения программы:

-1
3
-5
1
2
1
2
-2
2
3
Среднее арифм. отриц. элементов: -2.666667
-1, 3, -3, 1, 2, 1, 2, -2, 2, 3,