М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Sveta1100
Sveta1100
30.05.2023 17:36 •  Информатика

Дан массив целых чисел (n=22), заполненный случайным образом числами из промежутка [-12,48]
Вставить * после наименьшего элемента (если таких элементов несколько,
вставить * после каждого).
Удалить все элементы, имеющие наибольшее значение.

👇
Ответ:
sergey250305
sergey250305
30.05.2023
Хорошо, давайте решим эту задачу шаг за шагом.

Шаг 1: Создание и заполнение массива
Для начала создадим массив целых чисел, состоящий из 22 элементов, и заполним его случайными числами из промежутка [-12, 48].

Пример заполнения массива:
array = [42, 18, -9, 10, 27, 7, 30, -3, 35, 14, 5, 20, 39, -2, 12, -6, 24, 33, 17, 48, -7, 0]

Шаг 2: Нахождение наименьшего элемента и вставка *
Теперь нам нужно найти наименьший элемент в массиве и вставить * после него. Если таких элементов несколько, необходимо вставить * после каждого из них.

Для выполнения этого шага, мы создадим переменную min_value и установим ее равной первому элементу массива. Затем пройдем по всем остальным элементам и проверим, если текущий элемент меньше min_value, то заменим значение min_value на значение текущего элемента и продолжим итерацию.

После нахождения минимального значения, пройдем по всем элементам массива и, если элемент равен min_value, вставим * после него.

Пример выполнения этого шага:
array = [42, 18, -9, 10, 27, 7, 30, -3, 35, 14, 5, 20, 39, -2, 12, -6, 24, 33, 17, 48, -7, 0]
min_value = array[0] = 42
for i in range(1, len(array)):
if array[i] < min_value:
min_value = array[i]

for i in range(len(array)):
if array[i] == min_value:
array.insert(i+1, "*")

Обновленный массив:
array = [42, *, 18, -9, 10, 27, 7, 30, -3, 35, 14, 5, 20, 39, -2, 12, -6, 24, 33, 17, 48, -7, 0]

Шаг 3: Нахождение наибольшего значения и удаление элементов с этим значением
Для выполнения этого шага мы создадим переменную max_value и установим ее равной первому элементу массива. Затем пройдем по всем остальным элементам и проверим, если текущий элемент больше max_value, то заменим значение max_value на значение текущего элемента и продолжим итерацию.

После нахождения максимального значения, пройдем по всем элементам массива и, если элемент равен max_value, удалим его.

Пример выполнения этого шага:
array = [42, *, 18, -9, 10, 27, 7, 30, -3, 35, 14, 5, 20, 39, -2, 12, -6, 24, 33, 17, 48, -7, 0]
max_value = array[0] = 42
for i in range(1, len(array)):
if array[i] > max_value:
max_value = array[i]

for i in range(len(array)-1, -1, -1):
if array[i] == max_value:
array.pop(i)

Обновленный массив:
array = [*, 18, -9, 10, 27, 7, 30, -3, 35, 14, 5, 20, 39, -2, 12, -6, 24, 33, 17, -7, 0]

Итоговый массив:
array = [*, 18, -9, 10, 27, 7, 30, -3, 35, 14, 5, 20, 39, -2, 12, -6, 24, 33, 17, -7, 0]

Это решение удовлетворяет условиям задачи: были вставлены * после каждого наименьшего элемента, а также были удалены все элементы с наибольшим значением.
4,5(39 оценок)
Проверить ответ в нейросети
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ