Помогите написать программу ** языке Паскаль с подпрограммой "procedure" Задание 5.8

0 голосов
50 просмотров

Помогите написать программу на языке Паскаль с подпрограммой "procedure"
Задание 5.8


image

Информатика (93 баллов) | 50 просмотров
0

обязательно procedure?

0

может function и вернуть это среднее отрицательное в ней

0

Нужно именно procedure

Дано ответов: 2
0 голосов
Правильный ответ
// PascalABC.NET 3.3, сборка 1625 от 17.01.2018
// Внимание! Если программа не работает, обновите версию!

procedure mn(a:array of integer; var r:real);
begin
  var s:=a.Where(t->t<0);<br>  r:=s.Count>0? s.Average : 0
end;  

begin
  var x:=ArrRandom(8,-99,99); x.Println;
  var y:=ArrRandom(5,-99,99); y.Println;
  var z:=ArrRandom(8,-99,99); z.Println;
  var x1,y1,z1:real;
  mn(x,x1); mn(y,y1); mn(z,z1);
  var F:=Sqr(x1)+Sqr(y1)+sqr(z1);
  Writeln('F = ',F)
end.

Пример
87 -97 6 6 -58 56 -50 11
84 -74 57 45 44
6 -23 -17 66 14 -26 80 -99
F = 11847.0069444444

Замечание: Пример того, как НЕ НУЖНО использовать процедуры.
(150k баллов)
0

да. надо функцию использовать и динамические массивы.

0 голосов

Листинг программы и скриншот результат в приложении.
Написано на PascalABC.NET но должно работать и в других Паскалях.



image
(10.8k баллов)