Каждый отрицательный элемент массива заменить полусуммой соседей - Pascal

Узнай цену своей работы

Формулировка задачи:

Составить программу. Пусть дан массив из n элементов.Каждый отрицательный элемент замените полусуммой тех двух элементов, которые стоят с ним справа и слева. Помогите пожалуйста.

Решение задачи: «Каждый отрицательный элемент массива заменить полусуммой соседей»

textual
Листинг программы
  1. const n = 8;
  2. var a: array[1..n] of real;
  3.     i: integer;
  4.     t, ti: real;
  5.  
  6. begin
  7.   randomize;
  8.   for i := 1 to n do
  9.     repeat
  10.       a[i] := -99 + random(199);
  11.     until ((i > 1) and (i < n)) or (a[i] > 0);
  12.   writeln('Исходный массив:');
  13.   for i := 1 to n do write(a[i]:6:1);
  14.   writeln;
  15.   t := a[1];
  16.   for i := 2 to n - 1 do
  17.     begin
  18.       ti := a[i];
  19.       if a[i] < 0 then a[i] := (t + a[i + 1]) / 2;
  20.       t := ti
  21.     end;
  22.   writeln('Результат:');
  23.   for i := 1 to n do write(a[i]:6:1);
  24.   readln
  25. end.

Объяснение кода листинга программы

  1. Объявляется константа n со значением 8
  2. Объявляется массив a из 8 элементов типа real (вещественное число). Также объявляются переменные i и t, ti типа integer и real соответственно
  3. Генерируются случайные числа от -99 до 99 и записываются в массив a, при этом гарантируется, что внутренние элементы массива могут быть отрицательными, а первый и последний элементы могут быть любыми числами
  4. Выводится сообщение Исходный массив: на экран
  5. Выводятся элементы массива a с форматированием до 1 десятичной цифры после запятой
  6. Значению переменной t присваивается значение первого элемента массива a
  7. Происходит проход по массиву, при этом отрицательные элементы заменяются на их полусумму соседних элементов
  8. Выводится сообщение Результат: на экран
  9. Выводятся измененные элементы массива a с форматированием до 1 десятичной цифры после запятой
  10. Осуществляется ожидание ввода с клавиатуры.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.077 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы