Не выдается сообщение в случае отсутствия положительных элементов массива - Turbo Pascal

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

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

Помогите пожалуйста, считает и заменяет все правильно, а вот если положительных элемент нет, сообщение не выдает. Все отрицательные элементы массива замените квадратом среднего арифметического его положительных элементов. Если положительных элементов нет, выдать соответствующее сообщение

Решение задачи: «Не выдается сообщение в случае отсутствия положительных элементов массива»

textual
Листинг программы
var
  S: Real;
  N, i, K: Integer;
  X: array [1..50] of Real;
begin
  Write('введите размерность массива N=');
  ReadLn(N);
  S:=0; K:=0; { в TP необязательно }
  for i:=1 to N do begin
    Write('x[',i,']=');
    Read(x[i]);
    if x[i]>0 then begin
      S:=S+x[i]; K:=K+1;
    end;
  end;
  if K=0 then WriteLn('положительных элементов нет')
  else begin
    S:=S/K;
    WriteLn('SR=',S);
    S:=sqr(S);
    for i:=1 to N do if x[i]<0 then x[i]:=S;
  end;
  for i:=1 to N do WriteLn('x[',i,']=',x[i]);
end.

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

  1. В начале кода объявляются переменные S, N, i, K и X. Переменная S инициализируется значением 0, а переменная K - значением 0 (это необязательно в Turbo Pascal).
  2. Затем пользователю предлагается ввести размерность массива N. Это значение сохраняется в переменной N.
  3. Далее, переменные S и K инициализируются значениями 0.
  4. Затем идет цикл for, который выполняется от 1 до N. Внутри цикла пользователю предлагается ввести элемент массива X. Если этот элемент больше 0, то переменные S и K инкрементируются. Если элемент меньше 0, то он заменяется на S.
  5. После завершения цикла проверяется, были ли найдены положительные элементы. Если их не было, выводится сообщение положительных элементов нет. Если положительные элементы были, выводится среднее значение S, а также квадрат S. Затем все элементы массива X заменяются на S.
  6. Наконец, выводится содержимое массива X.

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

10   голосов , оценка 3.9 из 5
Похожие ответы