Предмет: Информатика, автор: alinatit18

ввести с клавиатуры массив из 5 элементов ,найти в среднее арифметическое всех отрицательных элементов массива.​

Ответы

Автор ответа: mikhail0mikhailkov
1

Ответ:

program xxxxx;

uses crt;

var

k,i:integer;

s:real;

a:array[1..5] of integer;

begin

for i:=1 to 5 do

begin

  readln(a[i]);

  if a[i] < 0 then begin

                           s:=s+a[i];

                           k:=k+1;

                           end;  

end;

if k=0 then writeln('error')

        else  writeln(s/k);

end.

Объяснение:


Wani4kaa: Почему Вы делите на пять в конце?
Wani4kaa: И где Вы объявили s?
mikhail0mikhailkov: про 's' не знаю вроде объявлял, а на пять потому что среднее арефмитическое
Wani4kaa: Вы считаете сумму только отрицательных чисел, а делите всегда на 5.
Wani4kaa: Хорошо, но почему теперь k-1? У Вас в начале программы k=0 и к концу представляет количество отрицательных чисел, зачем еще отнимать 1?
mikhail0mikhailkov: почему 0? по умолчанию разве не один?
Wani4kaa: Обычно все integer'ы создаются с нулем.
Wani4kaa: К слову, у Вас end незакрытый. Вы вообще код свой проверяли перед отправкой?
Wani4kaa: А что с "if k=1"?
Автор ответа: Wani4kaa
1

Код на PascalABC.Net дан в приложении.

Приложения:

mikhail0mikhailkov: переменная k бессмысленна так как мы изначально знаем что массив из 5 элементов
Wani4kaa: Но мы не уверены, что все 5 элементов будут отрицательными.
mikhail0mikhailkov: я думал что задумка и мено такая
Похожие вопросы
Предмет: Математика, автор: nurikkurakbaj0
Предмет: Алгебра, автор: Oommm