Если хотя бы один элемент одномерного массива отрицательный то вывести сообщение

Обновлено: 28.06.2024

Все, что необходимо начинающему и опытному программисту

Поиск в массиве

Теперь рассмотрим еще ряд задач, которые приходится решать при работе с массивами, а именно задачи поиска. На примере задачи поиска отрицательного элемента мы рассмотрим несколько методов, применяемых для поиска в массиве.

Рис. 8.7. Блок-схема алгоритма вычисления количества четных элементов массива

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

На первый взгляд задача кажется весьма простой: достаточно перебрать все элементы и проверить каждый на отрицательность. Это правильно. Но что же делать дальше? И как определить, что в массиве вообще нет отрицательных элементов? А если их несколько?

Данная задача может быть решена несколькими способами. Первый — самый простой — использовать флажок.

Пример 8.7.
Определение наличия в массиве отрицательного элемента с использованием флажка

Нахождение номера отрицательного элемента массива

Мы только что рассмотрели перебор элементов массива в поисках элементов с какими-то свойствами (в нашем случае отрицательных). Можно также использовать этот метод для поиска номера отрицательного элемента.

Пример 8.9.
Определение наличия в массиве отрицательного элемента путем вычисления его номера

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

Теперь рассмотрим последнюю придирку к нашему алгоритму. Если нам нужно найти номер первого отрицательного элемента, то зачем перебирать все элементы? Достаточно остановиться, как только будет найден первый такой элемент.

Эти рассуждения подталкивают нас заменить цикл for, который перебирает все элементы, циклом while, который остановится в нужный нам момент:

Лирическое отступление.
В только что приведенном примере мы использовали оператор inc, который раньше не упоминали. Он увеличивает значение указанной переменной на единицу. То есть оператор inc(k) аналогичен оператору k := k + 1. По аналогии с inc, в Паскале имеется еще оператор dec. Он уменьшает значение указанной переменной на единицу.
Мы не привели эти операторы ранее, чтобы преждевременно не забивать ваши головы излишней информацией. Вы можете ими не пользоваться и продолжать писать k := k + 1 и k := k -1, как и ранее, вместо inc(k) и dec(k).

Рассмотренный метод поиска первого отрицательного элемента обладает одним серьезным недостатком: он не останавливается, если в массиве вообще нет отрицательных элементов.

Пример 8.10.
Определение наличия в массиве отрицательного элемента и вычисление его номера (если такой есть)

Задание 8.8.
Определить, есть ли S массиве положительные Четные элементы, и если есть, вывести номер последнего из них.

Вывести информацию об ошибке, если в массиве все элементы положительные или нули
есть одномерный массив .немогу вывести информацию об ошибке,что в массиве все положительные члены.


Если в массиве больше отрицательных чисел, все положительные числа заменить суммой отрицательных
Задан одномерный массив P(N) (N<=60). Если в нем больше отрицательных чисел, все положительные.

Решение

Решение

MarinaP, решение amr-now верное, но если использовать современный метод some можно написать ещё короче:

В данном случае оно ничего не изменило бы. Так как условие i i !== numsArray.length.
Тем более в циклах принято писать i 1

Peskova_Sveta, да, короче, только метод filter переберёт все элементы массива, даже когда искомым(в данном случае отрицательным) будет первый, тогда как some, увидев его, дальше перебирать массив не будет, что значит не будет зря тратить драгоценные ресурсы.

Стоит заметить, что иногда, писать код "дословно" человеческому описанию задачи бывает лучше, чем сразу пытаться найти машинную интерпретацию задачи.

"Хотя бы одно", можно (грубо говоря) перевести, как some, коим и является лучший, для этой задачи метод

Скорее сишная привычка плюс врожденный минимализм. Зачем ставить лишние < >? В надежде на светлое будущее? А отступы - но так же и впрямь понятнее. Но эта понятность не должна превуалировать над внятным синтаксисом. И то что змеюки объявили синтаксически значимым невидимое - имхо, это большой ай-я-яй. И это отвратило меня от Питона однажды и навсегда. Что, в общем-то, жаль.
Кстати, и наша любимая JS не без греха. Разрешать замену точки с запятой переводом строки - ай-я-яй тот еще. Да еще имея в виду возможные сжатия. Но, кажется, этот прием относится к разряду нерекомендованных. нет?

Вот так не получается :

var f : boolean ; M, N, i, j : integer ; beginwriteln('Введите элементы массива') ; read (n) ; writeln ('Исходный массив : ') ; read (n) ; for i : = 1 to n dof : = true ;

for i : = 1 to M dofor j : = 1 to N doif f = false then write('В массиве есть отрицательный элемент') ; if f = true then else write('В массиве нет отрицательного элемента') ; end.


for i : = 1 to n do begin

a[i] : = random(51) - 10 ;

for i : = 1 to n do

then writeln('В массиве есть отрицательный элемент(ы)')

else writeln('В массиве все элементы > = 0') ;

Пример : - 5 6 - 4 13 - 1 - 6 9 30 36 36

В массиве есть отрицательный элемент(ы).


Введите с клавиатуры одномерный массив А (К), элементами которого являются положительные и отрицательные числа?

Введите с клавиатуры одномерный массив А (К), элементами которого являются положительные и отрицательные числа.

Подсчитайте сумму положительных элементов массива и произведение отрицательных.

Затем сформируйте новый массив В (К) из массива А (К), в котором все положительные элементы замените на произведение отрицательных, а отрицательные на сумму положительных.


В массиве, состоящем из положительных и отрицательных чисел, определить, сколько элементов положительных и сколько элементов отрицательных?

В массиве, состоящем из положительных и отрицательных чисел, определить, сколько элементов положительных и сколько элементов отрицательных.


Дан одномерный массив, который содержит не более 60 вещественных чисел, среди которых есть положительные, отрицательные и нули?

Дан одномерный массив, который содержит не более 60 вещественных чисел, среди которых есть положительные, отрицательные и нули.

Переставить элементы массива так, чтобы сначала шли нули, потом отрицательные, а затем положительные элементы массива.


Задан одномерный массив X1, X2, …, XN ?

Задан одномерный массив X1, X2, …, XN .

Фрагмент алгоритма определяет Выберите один ответ : индекс первого отрицательного элемента индекс минимального элемента массива индекс последнего отрицательного элемента минимальный элемент массива количество отрицательных элементов.


1)Найти в массиве все отрицательные элементы2)Составить программу уменьшения всех элементов массива в три раза?

1)Найти в массиве все отрицательные элементы

2)Составить программу уменьшения всех элементов массива в три раза.


Написать программу вывода на экран отрицательных элементов массива и суммы положительных элементов?

Написать программу вывода на экран отрицательных элементов массива и суммы положительных элементов.


Помогите написать программу?

Помогите написать программу!

Дан целочисленный массив M из 15 элементов.

Элементы массива могут принимать целые значения от - 500 до 500 и вводятся с клавиатуры.

Найти и вывести :

Сумму квадратов отрицательных элементов.

Гарантируется, что в исходном массиве есть хотя бы один отрицательный элемент.

2. Произведение элементов массива, имеющих четное значение и стоящих на четных местах.

Гарантируется, что в исходном массиве есть хотя бы один такой элемент.

3. Количество элементов массива, превосходящих по модулю 100.

Гарантируется, что в исходном массиве есть хотя бы один такой элемент.


Дан массив x1, x2, … x15?

Дан массив x1, x2, … x15.

Все отрицательные элементы массива заменить на 1, а положительные элементы массива заменить на 5.

Вывести на печать полученный массив.


Дан одномерный массив заменить все положительные элементы на максимальное среди них все отрицательные элементы массива на их индексы?

Дан одномерный массив заменить все положительные элементы на максимальное среди них все отрицательные элементы массива на их индексы.


На языке Си, не си + +Дан массив Х(324)?

На языке Си, не си + +

Дан массив Х(324).

Найти сумму элементов массива, предшествующих первому отрицательному элементу.

Если среди элементов массива нет отрицательных, то просуммировать все элементы.

Написать программу, которая выводит на экран результаты следующих действий: 27-5= 11+21= 32/2= 2+2*2= (2+2) * 2= Написать программу, которая выводит на экран результаты следующих действий: 21-4= 21+11= 43/3= 3+3*3= (3+3) * 3=

Вариант 2 1. Даны три числа. Найдите сумму второго и третьего числа. Найдите квадрат первого числа. 2. Даны длины сторон прямоугольника. Найдите площадь прямоугольника. 3. Даны длины катетов прямоугольного треугольника. Найдите периметр треугольника.

2. Какое значение будет иметь переменная b после выполнения следующих операторов присваивания: a:=3; b:=a+9; b:=a+b; b:=a-b+b/a. 3.

Читайте также: