Дан массив действительных чисел, размерность которого n. подсчитайте, сколько в нём отрицательных, положительных и нулевых элементов.

gsajhja gsajhja    2   16.06.2019 01:53    0

Ответы
efj63233 efj63233  12.07.2020 23:56

var

 arr: array of real;

 n, null_elem, negative, positive, i: integer;

begin

 randomize;

 writeln('Введите размерность массива: ');

 readln(n);

 arr:=new real[n];

 null_elem := 0;

 negative := 0;

 positive := 0;

 writeln('Сгенерированный массив: ');

 for i := 0 to n-1 do  

 begin

   arr[i] := random * 98 - 44;

   if (arr[i] = 0) then inc(null_elem);

   if (arr[i] < 0) then inc(negative);

   if (arr[i] > 0) then inc(positive);

   write(arr[i]:10:2);

 end;

 writeln(#10, #10, 'Нулевых элементов: ', null_elem, #10, 'Отрицательных элементов: ', negative, #10, 'Положительных элементов: ', positive);

end.

ПОКАЗАТЬ ОТВЕТЫ
viktoriyabochko viktoriyabochko  12.07.2020 23:56

=sgncalc(диапазон ячеек, -1) - число отрицательных элементов

=sgncalc(диапазон ячеек, 0) - число нулевых элементов

=sgncalc(диапазон ячеек, 1) - число положительных элементов

Function sgncalc(a As Range, signum As Integer) As Integer

Dim r As Range

Dim b(-1 To 1) As Integer

For Each r In a

b(Sgn(r)) = b(Sgn(r)) + 1

Next

sgncalc = b(signum)

End Function

Excel VBA

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика