Кто-нибудь сможет сделать? 1 в массиве с = {1, 2, -3, 0, -1, -7, -9, 4, 5, -6, 3, 2, 9, 10, -7, -9, -5} найти количество соседств двух положительных элементов и количество соседств двух отрицательных элементов. (примечание: “соседними” можно считать элементы сi и ci+1, где i = 1, …, 16). 2 отсортировать в матрице столбцы по убыванию значений элементов в первой строке. матрицу задать самостоятельно.
# Задача 1
# В массиве С = {1, 2, -3, 0, -1, -7, -9, 4, 5, -6, 3, 2, 9, 10, -7, -9, -5}
# найти количество соседств двух положительных элементов и количество
# двух отрицательных элементов.
c = [1, 2, -3, 0, -1, -7, -9, 4, 5, -6, 3, 2, 9, 10, -7, -9, -5]
count_pos = 0
count_neg = 0
for i, val in enumerate(c):
if i > 0:
if c[i - 1] < 0 and val < 0:
count_neg += 1
elif c[i - 1] > 0 and val > 0:
count_pos += 1
print("Количество двух соседних положительных элементов: ", count_pos)
print("Количество двух соседних отрицательных элементов: ", count_neg)
# Задача 2
# Отсортировать в матрице столбцы по убыванию
# значений элементов в первой строке.
# Матрицу задать самостоятельно.
import random
arr = [[random.randint(1, 20) for _i in range(4)] for _j in range(4)] # Матрица 4х4
N = len(arr)
# Печать исходной матрицы
print("\nИсходная матрица:")
for el in arr:
print(el)
# Сортировка матрицы
for i in range(N - 1):
for j in range(N - i - 1):
if arr[0][j] > arr[0][j + 1]:
for z in range(N):
arr[z][j], arr[z][j + 1] = arr[z][j + 1], arr[z][j]
print("\nОтсортированная матрица: ")
for el in arr:
print(el)
# Python 3.7.3