Плиииз! Нужна помощь! Задан числовой массив А(50). Определить, каких элементов больше в этом массиве: положительных или отрицательных.
При решении учтите, что число 0 не относится ни к отрицательным, ни к положительным числам.
sdsdf:
В чём сложность возникает?
все 50 чисел в массив вводятся с клавиатуры?
Скорее всего, в неумении нормально выражать свои мысли в обществе. Так и представляю себе, как автор вопроса на уроке поднимает руку и говорит учителю: "Плиииз! Повторите еще раз целом все предложение!".
А в каком языке вообще писать?!
pascal
Ответы
Ответ дал:
4
//писал на скорую руку, должно все правильно работать
var
a,plus,minus,d:integer;
c:array[1..50] of integer;
begin
plus:=0;
minus:=0;
for a:=1 to 50 do
c[a]:=random(20)-10;//заполняем массив рандомо
for a:=1 to 50 do//проверям условие
if ((c[a]>0) and (c[a]<>0)) then
plus:=plus + 1
else if ((c[a]<0) and (c[a]<>0)) then
minus:= minus + 1;
Writeln(plus,' ');//кол-во полож
Writeln(minus,' ');//кол-во отриц
if (plus>minus)then
Writeln('Положительных')
else Writeln('Отрицательных');
end.
var
a,plus,minus,d:integer;
c:array[1..50] of integer;
begin
plus:=0;
minus:=0;
for a:=1 to 50 do
c[a]:=random(20)-10;//заполняем массив рандомо
for a:=1 to 50 do//проверям условие
if ((c[a]>0) and (c[a]<>0)) then
plus:=plus + 1
else if ((c[a]<0) and (c[a]<>0)) then
minus:= minus + 1;
Writeln(plus,' ');//кол-во полож
Writeln(minus,' ');//кол-во отриц
if (plus>minus)then
Writeln('Положительных')
else Writeln('Отрицательных');
end.
Впервые такую "логику" встречаю. Проверяется условие: "если значение больше нуля и не равно нулю" (зачем вторая проверка? Само собой, если значение больше нуля, то равно нулю оно никак быть не может). И далее опять "иначе, если значение меньше нуля и не равно нулю" (опять ненужная проверка на неравенство нулю). А зачем на выводе после значений plus и minus пробелы выводить, если потом смена строки идет - это вообще удивительно.-
Но работать "это" будет, так что в целом правильно.
Вас заинтересует
2 года назад
2 года назад
2 года назад