
Одномерные массивы ДЗ: Написать программы - Заполнить массив A из 15 элементов, случайными
числами, значение которых изменяются в диапазоне от -50 до 50. Вывести массив на экран. Найти: 1. Вывести на экран произведение всех элементов массива. 2. Вывести на экран количество отрицательных элементов массива. 3. Вывести на экран среднее арифметическое всех нечетных элементов целочисленного массива (с точностью 2 знака после запятой). Если в массиве нет нечетных элементов, вывести "NO". 4. Вывести на экран список всех положительных чисел в одну строку, оканчивающихся на 8. Если в массиве нет таких элементов, вывести "NO". 5. Вывести на экран список всех положительных чисел в одну строку, которые делятся на 3 и не делятся на 9. Если в массиве нет таких элементов, вывести "NO".

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

import random
A = []
for i in range(15):
A.append(random.randrange(-50,50))
print(A)
pr = 1
for i in range(len(A)):
pr*= A[i]
print("Произведение всех элементов равно: ", pr)
ko = 0
for i in range(len(A)):
if A[i] < 0:
ko += 1
print("Количество отрицательных элементов: ", ko)
sn = 0
nch = 0
for i in range(15):
if A[i] % 2 != 0:
sn+= A[i]
nch += 1
if nch == 0:
print("NO")
else:
sr = sn / nch
print("Среднее арифметическое:", end=" ")
print(float('{:.2f}'.format(sr)))
print("Положительные, которые оканчиваются на 8:", end= " ")
k8 = 0
k93 = 0
for i in range(len(A)):
if A[i] > 0 and A[i] % 10 == 8:
k8 += 1
print(A[i],end=" ")
if k8 == 0:
print("NO",sep=" ")
print("Числа, которые делятся на 3, но не на 9:")
for i in range(len(A)):
if A[i] % 3 == 0 and A[i] % 9 != 0 and A[i] > 0:
k93+=1
print(A[i],end=" ")
if k93 == 0:
print("NO")



Привет! Я могу помочь тебе с написанием программ, которые решат поставленные задачи.
Вот пример решения первой задачи:
```python import random
# Создаем массив из 15 элементов a = [random.randint(-50, 50) for _ in range(15)]
# Выводим массив на экран print(a)
```
В этом коде мы используем модуль `random` для генерации случайных чисел. Мы создаем массив `a` из 15 элементов, где каждый элемент это случайное число в диапазоне от -50 до 50. Затем мы просто выводим этот массив на экран.
Дальше решим остальные задачи:
2. Вывести на экран количество отрицательных элементов массива.
```python count_negative = len([x for x in a if x < 0]) print(count_negative) ```
Мы используем генератор списка для создания списка отрицательных элементов массива `a` и затем используем функцию `len()` для подсчета количества элементов.
3. Вывести на экран среднее арифметическое всех нечетных элементов целочисленного массива (с точностью 2 знака после запятой). Если в массиве нет нечетных элементов, вывести "no".
```python odd_numbers = [x for x in a if x % 2 != 0] if len(odd_numbers) > 0: average = sum(odd_numbers) / len(odd_numbers) print("{:.2f}".format(average)) else: print("no") ```
Мы снова используем генератор списка для создания списка нечетных элементов массива `a`. Затем мы проверяем, есть ли в этом списке элементы. Если список не пустой, мы находим среднее арифметическое этих элементов и выводим его с точностью 2 знака после запятой. Если список пустой - выводим "no".
4. Вывести на экран список всех положительных чисел в одну строку, оканчивающихся на 8. Если в массиве нет таких элементов, вывести "no".
```python positive_ending_with_8 = [x for x in a if x > 0 and x % 10 == 8] if len(positive_ending_with_8) > 0: print(" ".join(map(str, positive_ending_with_8))) else: print("no") ```
Мы снова используем генератор списка для создания списка положительных элементов, оканчивающихся на 8. Затем мы проверяем, есть ли в этом списке элементы. Если список не пустой, мы используем `join()` и `map()` для преобразования элементов списка в строку и выводим их через пробел. Если список пустой - выводим "no".
5. Вывести на экран список всех положительных чисел в одну строку, которые делятся на 3 и не делятся на 9. Если в массиве нет таких элементов, вывести "no".
```python divisible_by_3_and_not_9 = [x for x in a if x > 0 and x % 3 == 0 and x % 9 != 0] if len(divisible_by_3_and_not_9) > 0: print(" ".join(map(str, divisible_by_3_and_not_9))) else: print("no") ```
Мы снова используем генератор списка для создания списка положительных элементов, которые делятся на 3 и не делятся на 9. Затем мы проверяем, есть ли в этом списке элементы. Если список не пустой, мы используем `join()` и `map()` для преобразования элементов списка в строку и выводим их через пробел. Если список пустой - выводим "no".
Надеюсь, это помогло! Если у тебя есть еще вопросы - дай знать.


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







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili