В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
MarkohkaMolovko
MarkohkaMolovko
03.01.2021 08:43 •  Информатика

Реши задан числовой массив, состоящий из 14 элементов. найдите произведение всех отрицательных элементов, больших минимального

Показать ответ
Ответ:
Ogents007
Ogents007
03.10.2020 12:19
1. Современный вариант

// PascalABC.NET 3.1, сборка 1213 от 04.04.2016
const
  n=14;
begin
  var a:=ArrRandom(n,-50,50); a.Println;
  var min:=a.Min;
  var b:=a.Where(x->(x>min) and (x<0));
  if b.Count>0 then Writeln('Искомое произведение равно ',
    b.Aggregate(1.0,(p,x)->p*x))
  else Writeln('Нет отрицательных чисел, меньших минимального')
end.

Тестовое решение:
44 -35 -10 43 -25 -32 -32 -43 4 -50 29 -7 42 3
Искомое произведение равно -2696960000

2. Школьный вариант

// PascalABC.NET 3.1, сборка 1213 от 04.04.2016
const
  n=14;
var
  i,min,k:integer;
  a:array[1..n] of integer;
  p:real;
begin
  Randomize;
  min:=100; // любое, большее максимального 50
  for i:=1 to n do begin
    a[i]:=Random(101)-50;
    Write(a[i],' ');
    if a[i]<min then min:=a[i]
    end;
  Writeln;
  p:=1.0;
  k:=1;
  for i:=1 to n do
    if (a[i]>min) and (a[i]<0) then begin
      p:=p*a[i]; Inc(k)
      end;
  if k>0 then Writeln('Искомое произведение равно ',p)
  else Writeln('Нет отрицательных чисел, меньших минимального')
end.

Тестовое решение:
40 49 27 -14 -34 -45 -41 -23 50 1 40 -18 -27 -20
Искомое произведение равно -4362996960
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота