1)напишите программу, которая находит в массиве количество элементов, делящихся на 5.
2)напишите программу,которая находит среднее арифметическое всех элементов, массива которая делятся на 3 и заканчиваются на 1.
3)напишите программу которая находит элемент массива ,двоичная запись которого содержит больше всего едениц.

vikacat12345 vikacat12345    1   25.02.2020 21:35    331

Ответы
Barsik12847 Barsik12847  10.01.2024 10:44
Конечно, я могу помочь вам с этими задачами. Вот решения для каждой из них:

1) Чтобы найти количество элементов в массиве, которые делятся на 5, мы можем использовать цикл, который итерируется по всем элементам массива. Затем мы проверяем, делится ли текущий элемент на 5 без остатка, и если да, увеличиваем счетчик. Вот программа:

```python
def count_elements_divisible_by_5(arr):
count = 0
for num in arr:
if num % 5 == 0:
count += 1
return count

# Пример использования:
arr = [10, 15, 20, 25, 30]
result = count_elements_divisible_by_5(arr)
print("Количество элементов, делящихся на 5:", result)
```

2) Чтобы найти среднее арифметическое всех элементов массива, которые делятся на 3 и заканчиваются на 1, мы сначала должны найти сумму таких элементов, а затем поделить эту сумму на количество таких элементов. Вот программа:

```python
def average_of_elements_divisible_by_3_ending_with_1(arr):
sum_ = 0
count = 0
for num in arr:
if num % 3 == 0 and num % 10 == 1:
sum_ += num
count += 1
if count == 0:
return 0 # Если нет элементов, удовлетворяющих условию, возвращаем 0
else:
return sum_ / count

# Пример использования:
arr = [21, 31, 42, 51, 62]
result = average_of_elements_divisible_by_3_ending_with_1(arr)
print("Среднее арифметическое:", result)
```

3) Чтобы найти элемент массива, чья двоичная запись содержит больше всего единиц, мы будем сравнивать количество единиц в двоичном представлении каждого элемента массива. Для этого можно использовать функцию `bin()`, которая возвращает двоичное представление числа в виде строки. Вот программа:

```python
def find_element_with_most_ones(arr):
max_count = 0
max_element = None
for num in arr:
binary = bin(num)[2:] # [2:] используется для удаления префикса '0b' из двоичной строки
count = binary.count('1')
if count > max_count:
max_count = count
max_element = num
return max_element

# Пример использования:
arr = [12, 15, 25, 31, 42]
result = find_element_with_most_ones(arr)
print("Элемент с наибольшим количеством единиц в двоичной записи:", result)
```

Надеюсь, это помогает! Если у вас есть дополнительные вопросы, не стесняйтесь задавать их.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика