напишите программу ** любом известном Вам алгоритмическом языке. ** вход программе...

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

Информатика (23 баллов) | 25 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Произведение чисел положительно, если среди них есть четное количество отрицательных чисел. И отрицательно, если их нечетное количество.
Я просто алгоритм напишу
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 предлагает, я бы не стал. Он тупо перемножает числа.
Произведение может оказаться слишком большим, да оно нам и не нужно.

(320k баллов)
0 голосов
Паскаль

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.
(7.2k баллов)