Найти количество отрицательных и положительных элементов в данном массиве.
Для решения этой задачи введем два счетчика и опишем только фрагмент решения задачи. Предполагается, что вы опишете массив целых чисел размерностью n.k1- счетчик для положительных элементов,
k2 - счетчик для отрицательных для отрицательных элементов.
k1:=0; k2:=0;
for i:=1 to n do
if a[i]>0 then k1:=k1+1 else if a[i]<0 then k2:=k2+1;
writeln('ко-во положительных элементов', k1);
writeln('ко-во отрицательных элементов', k2); Есть ли отрицательный элемент в массиве?
Это одна из задач цикла: Определить, есть ли в данном массиве элементы с данным свойством или найти первый (последний) элемент, отвечающий заданным условиям.Для решения таких задач удобнее всего использовать циклы с условием (while, repeat)
При решении нашей задачи начнем с первого элемента (i=1). Пока не просмотрен последний (i<=n) и не найден отрицательный элемент (b[i]>=0), будем переходить с следующему (i:=i+1). Таким образом, мы закончим просмотр в одном из двух случаев: 1 - просмотрели все элементы и не нашли отрицательный (i>n), 2 - нашли нужный, при этом i<=n.
i:=1;while (i<=n) and (b[i]>0) do i:=i+1;
if i>n then writeln('no') else writeln('yes');
Снова это лишь фрагмент программы!
Найти номер последнего отрицательного элемента массива.
Последний отрицательный - это первый отрицательный элемент, если массив рассматривать с конца (i=n). Если очередной элемент не является отрицательным, то нужно уменьшить значение текущего индекса., пока он не станет меньше первого элемента или не будет найден отрицательный элемент.
i:=n;while (i>=1) and (b[i]>0) do i:=i-1;
if i<1 then writeln('отрицательного элемента нет') else writeln('номер последнего отрицательного элемента =',i);
Комментариев нет:
Отправить комментарий