Задача 71

Создать прямоугольную матрицу A, имеющую N строк и M столбцов со случайными элементами. Определить средние значения по всем строкам и столбцам матрицы. Результат оформить в виде матрицы из N + 1 строк и M + 1 столбцов
Решение:
Читать далее →

Задача 70

Создать прямоугольную матрицу A, имеющую N строк и M столбцов со случайными элементами. Найти наименьшее значение среди средних значений для каждой строки матрицы
Решение:
Читать далее →

Задача 69

Создать прямоугольную матрицу A, имеющую N строк и M столбцов со случайными элементами. Найти наименьший элемент столбца матрицы A, для которого сумма абсолютных значений элементов максимальна
Решение:
Читать далее →

Задача 68

Создать прямоугольную матрицу A, имеющую N строк и M столбцов со случайными элементами. Найти наибольшее значение среди средних значений для каждой строки матрицы
Решение:
Читать далее →

Задача 67

Создать прямоугольную матрицу A, имеющую N строк и M столбцов со случайными элементами. Найти наибольший элемент столбца матрицы A, для которого сумма абсолютных значений элементов максимальна

Решение:
Читать далее →

Задача 51

Заданы M строк символов, которые вводятся с клавиатуры. Найти количество символов в самой длинной строке. Выровнять строки по самой длинной строке, поставив перед каждой строкой соответствующее количество звёздочек

Решение:

import random

M = random.randint(1,10)
arr = [random.randint(1,10) for i in range(M)]

for i in range(M):
    arr[i] = input()

print(arr)

print("Количество символов в самой длинной строке: " + str(len(max(arr))))

K = len(max(arr))

for i in range(M):
    N = K - len(arr[i])

print("*" * N + str(arr[i]))

Задача 50

Дан одномерный массив числовых значений, насчитывающий N элементов. Подсчитать количество чисел, делящихся на 3 нацело, и среднее арифметическое чисел с чётными значениями. Поставить полученные величины на первое и последнее места в массиве (увеличив массив на 2 элемента)

Решение:

import random

N = 11

def init_random_list(list_size):
    list = []
    while list_size > 0:
        list.append(random.randint(-3, 3))
        list_size = list_size - 1

    return list


lst = init_random_list(N)
count_divided_by_3 = 0
sum_even = 0
count_event = 0
print("Исходный массив:        ", lst)


i = 0
while i < len(lst):
    if lst[i] % 3 == 0 and lst[i] != 0:
        count_divided_by_3 += 1

    if lst[i] % 2 == 0:
        sum_even += lst[i]
        count_event += 1

    i += 1

lst.insert(0, count_divided_by_3)
lst.append(sum_even/count_event)

print("Модифицированный массив:", lst)

Задача 49

Дан одномерный массив числовых значений, насчитывающий N элементов. Определить, имеются ли в массиве два подряд идущих нуля

Решение:

import random

N = 11

def init_random_list(list_size):
    list = []
    while list_size > 0:
        list.append(random.randint(-3, 3))
        list_size = list_size - 1

    return list


lst = init_random_list(N)
is_double_zero = False
print("Исходный массив:        ", lst)


i = 0
while i  0):
        if lst[i-1] == 0 and lst[i] == 0:
            is_double_zero = True
            break

    i += 1

if is_double_zero:
    print("В массиве имеются два подряд идущих нуля")
else:
    print("В массиве нет нулей идущих подряд")

Задача 48

Дан одномерный массив числовых значений, насчитывающий N элементов. Вместо каждого элемента с нулевым значением поставить сумму двух предыдущих элементов массива

Решение:

import random

N = 11

def init_random_list(list_size):
    list = []
    while list_size > 0:
        list.append(random.randint(-3, 3))
        list_size = list_size - 1

    return list


lst = init_random_list(N)
print("Исходный массив:        ", lst)


i = 0
while i < len(lst): if lst[i] == 0: if i > 1:
            lst[i] = lst[i-1] + lst[i-2]
        elif i == 1:
            lst[i] = lst[i - 1]
        else:
            print("Первый элемент 0, его нельзя заменить потому что нет предшествующих")

    i += 1

print("Массив после модификации:", lst)

Задача 47

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить из массива элементы, принадлежащие промежутку [B; C]

Решение:

import random

N = 11
B = -1
C = 1


def init_random_list(list_size):
    list = []
    while list_size > 0:
        list.append(random.randint(-3, 3))
        list_size = list_size - 1

    return list


lst = init_random_list(N)
count_positive = 0
print("Исходный массив:        ", lst)
print("Промежуток [%s, %s]:" % (B, C))

for element in lst:
    if element >= 0:
        count_positive += 1

i = 0
j = len(lst)
while i < j:
    if B <= lst[i] <= C:
        del lst[i]
        j -= 1
    else:
        i += 1

print("Массив после модификации:", lst)