Ввести с клавиатуры массив из 5 элементов ,найти в среднее арифметическое всех отрицательных элементов массива.
Ответ:
program xxxxx;
uses crt;
var
k,i:integer;
s:real;
a:array[1..5] of integer;
begin
for i:=1 to 5 do
readln(a[i]);
if a[i] < 0 then begin
s:=s+a[i];
k:=k+1;
end;
if k=0 then writeln('error')
else writeln(s/k);
end.
Объяснение:
Почему Вы делите на пять в конце?
И где Вы объявили s?
про 's' не знаю вроде объявлял, а на пять потому что среднее арефмитическое
Вы считаете сумму только отрицательных чисел, а делите всегда на 5.
Хорошо, но почему теперь k-1? У Вас в начале программы k=0 и к концу представляет количество отрицательных чисел, зачем еще отнимать 1?
почему 0? по умолчанию разве не один?
Обычно все integer'ы создаются с нулем.
К слову, у Вас end незакрытый. Вы вообще код свой проверяли перед отправкой?
А что с "if k=1"?
Код на PascalABC.Net дан в приложении.
переменная k бессмысленна так как мы изначально знаем что массив из 5 элементов
Но мы не уверены, что все 5 элементов будут отрицательными.
я думал что задумка и мено такая