Вопрос задан 07.05.2019 в 09:23. Предмет Информатика. Спрашивает Абилмаджин Ахат.

Найдите количество элементов массива, которые отличны от наибольшего элемента не более чем на 10%.

0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Нечаев Мартин.
// PascalABC.NET 3.2, сборка 1425 от 22.04.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ArrRandom(ReadInteger('n='),-10,10); a.Println;
  var max:=a.Max;
  Writeln('k=',a.Where(x->x>=0.9*max).Count)
end.

Пример
n= 20
9 1 -9 -8 -4 3 -5 -8 10 7 -9 1 -5 -4 0 -4 9 6 9 -8
k=4
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения этой задачи нам необходимо найти наибольший элемент в массиве и затем подсчитать количество элементов, которые отличаются от него не более чем на 10%. Давайте разберемся, как это сделать.

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

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

Вот пример кода на Python, который находит наибольший элемент в массиве:

```python def find_max_element(arr): max_element = arr[0] # Предполагаем, что первый элемент массива - наибольший for element in arr: if element > max_element: max_element = element return max_element

# Пример использования функции arr = [3, 8, 2, 5, 10] max_element = find_max_element(arr) print(max_element) # Выводит 10 ```

Подсчет количества элементов, отличающихся не более чем на 10%

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

Вот пример кода на Python, который решает эту задачу:

```python def count_elements_within_range(arr, target, percentage): count = 0 for element in arr: difference = abs(element - target) if difference / target <= percentage / 100: count += 1 return count

# Пример использования функции arr = [3, 8, 2, 5, 10] max_element = find_max_element(arr) percentage = 10 count = count_elements_within_range(arr, max_element, percentage) print(count) # Выводит 3 ```

В данном примере, мы пройдемся по всем элементам массива и сравним их с наибольшим элементом. Если разница между текущим элементом и наибольшим элементом не превышает 10% от значения наибольшего элемента, мы увеличим счетчик. В конце, мы вернем значение этого счетчика, которое и будет являться количеством элементов, отличающихся не более чем на 10% от наибольшего элемента.

Надеюсь, это помогло! Если у вас есть еще вопросы, пожалуйста, дайте знать.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос