Предмет: Информатика,
автор: alinatit18
ввести с клавиатуры массив из 5 элементов ,найти в среднее арифметическое всех отрицательных элементов массива.
Ответы
Автор ответа:
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:
Почему Вы делите на пять в конце?
И где Вы объявили s?
про 's' не знаю вроде объявлял, а на пять потому что среднее арефмитическое
Вы считаете сумму только отрицательных чисел, а делите всегда на 5.
Хорошо, но почему теперь k-1? У Вас в начале программы k=0 и к концу представляет количество отрицательных чисел, зачем еще отнимать 1?
почему 0? по умолчанию разве не один?
Обычно все integer'ы создаются с нулем.
К слову, у Вас end незакрытый. Вы вообще код свой проверяли перед отправкой?
А что с "if k=1"?
Автор ответа:
1
Код на PascalABC.Net дан в приложении.
Приложения:
переменная k бессмысленна так как мы изначально знаем что массив из 5 элементов
Но мы не уверены, что все 5 элементов будут отрицательными.
я думал что задумка и мено такая
Похожие вопросы
Предмет: Математика,
автор: lamtovadasa
Предмет: Математика,
автор: shamanovaklimenko
Предмет: Математика,
автор: nurikkurakbaj0
Предмет: Алгебра,
автор: Oommm