Напишите программу на любом известном Вам алгоритмическом языке. На вход программе подается число N. Далее вводится N чисел. Программа определяет, будет ли произведение этих чисел положительным

Напишите программу на любом известном Вам алгоритмическом языке. На вход программе подается число N. Далее вводится N чисел. Программа определяет, будет ли произведение этих чисел положительным
Гость
Ответ(ы) на вопрос:
Гость
Паскаль uses crt; var n,pr,x:integer;     a: array [1..1000] of integer; begin      write('Введи количество чисел последовательности:');      readln(n);      pr:=1;      for x:=1 to N do      begin           readln(a[x]);           pr:=pr*a[x];      end;      if pr>0 then writeln('YES')         else writeln('NO'); end.
Гость
Произведение чисел положительно, если среди них есть четное количество отрицательных чисел. И отрицательно, если их нечетное количество. Я просто алгоритм напишу 1) Вводим число N 2) Устанавливаем счетчик k = 0 3) Цикл по i от 1 до N 3.1) Вводим очередное число 3.2) Если число < 0, то прибавляем счетчик k = k + 1 3.3) Конец цикла 4) Если число k четное (k mod 2 = 0), то результат положительный Если k нечетное (k mod 2 = 1), то результат отрицательный. 5) Конец А вот делать так, как Sky предлагает, я бы не стал. Он тупо перемножает числа. Произведение может оказаться слишком большим, да оно нам и не нужно.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы