Напишите и объясните программу, которая в последовательности целых чисел находит и выводит количество положительных и количество отрицательных чисел. программа получает на вход целые числа, количество введенных чисел неизвестно, последовательность чисел заканчивается числом 0 (0 - признак окончания ввода, не входит а последовательность) количество чисел не превышает 1000. введенные числа по модулю не превышают 1000

806nikita 806nikita    3   15.12.2019 21:36    0

Ответы
daниил1 daниил1  10.10.2020 20:50

PascalABC.NET

begin

 // Последовательность целых чисел вводится с клавиатуры

 // пока не будет введен 0 (который не войдет в нее).

 // Затем последовательность преобразуется в массив (ToArray)

 // нужного размера, который сохраняется с именем a

 var a := ReadSeqIntegerWhile(p -> p <> 0).ToArray;

 // Заведем счетчики для количества положительных kp и

 // отрицательных kn элементов и обнулим их

 var (kp, kn) := (0, 0);

 // Просматриваем в цикле массив. На каждом шаге p будет обозначать

 // очередной элемент массива

 foreach var p in a do

   if p > 0 then       // если элемент положительный

     kp += 1               // добавим 1 в счетчик положительных

   else if p < 0 then  // если элемент отрицательный

     kn += 1;              // добавим 1 в счетчик отрицательных

 // Осталось вывести результаты

 Writeln('Положительных чисел ', kp, ', отрицательных ', kn)

end.

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