Почему когда я ввожу положительные и отрицательные число, программа пишет, что нет отрицательных чисел либо положительных. Помогите пожалуйста это исправить
Приложения:

BobbyFresnel:
Косвенная причина Вашей ошибки в том, что Вы не выполнили рекомендацию (предупрежденние) компилятора PascalABC.NET по поводу того, что параметр цикла нужно описываеть в его заголовке, т.е. не выносить в описание var i: integer, а писать for var i := ...
var n := ReadInteger('Введите число элементов:');
var a := ReadArrInteger('Введите массив:', n);
var (s, c, k, h) := (1.0, 0.0, 0, 0);
for var i := 0 to n - 1 do
if a[i] > 0 then
begin
s *= Sin(a[i]);
k += 1
end
else if a[i] < 0 then
begin
c += Cos(a[i]);
h += 1
end;
if k > 0 then
Writeln(...)
else
Writeln(...);
if h > 0 then
Writeln(...)
else
Writeln(...);
end.
Ответы
Ответ дал:
1
Для цикла ввода элементов массива не указаны начало и конец (begin - end).
Из за этого, в процессе ввода элементов не выполняются их проверки и не считаются суммы и произведения.
Получается, проверки выполняются только один раз- после завершения цикла ввода элементов, и какое число было последним (положительное или отрицательное)- для него и посчитается синус либо косинус.
Вас заинтересует
1 год назад
1 год назад
1 год назад
1 год назад
3 года назад
3 года назад
8 лет назад
8 лет назад