На python.В массиве из 10 вещественных чисел отсортировать в порядке убывания
На python.В массиве из 10 вещественных чисел отсортировать в порядке убывания все отрицательные элементы. Положительные и нулевые элементы бросить на собственных местах.
Задать свой вопросОтвет: Попробуй это, надеюсь, верно понял задание:
def task():
numbers = input("Введите массив чисел через пробел: ")
array = list(numbers.split())
negativelist = []
loopint = 0
for i in range(0, len(array)):
array[i] = int(array[i])
while loopint lt; len(array):
if array[loopint] lt; 0:
negativelist.append(array[loopint])
else:
pass
loopint = loopint + 1
negativelist.sort()
final_list = negativelist + array
result = []
for i in final_list:
if i not in result:
result.append(i)
print(result)
Разъяснение:
1)Объявляем функцию task() без характеристик;
2)Ждем ввода чисел с поддержкою input();
3)Превращаем введенные числа в массив с помощью list(), за ранее разбив их по пробелам с подмогою split();
4)Так как необходимо отсортировать только негативные элементы, нам нужен будет отдельный массив негативных чисел, создаем порожний лист negativelist и переменную для loop'a loopint;
5)Превращаем все введенные элементы в числа с поддержкою for loop и функции int();
6)Производим итерацию через массив чисел и, если число меньше 0, добавляем его в лист отрицательных чисел negativelist с подмогою функции append(), если же число не отрицательное, то ничего не делаем (pass). Не забываем про луп-переменную.
7)Сейчас когда у нас есть отдельный список отрицательных чисел, сортируем его с помощью sort();
8)Объявляем новый перечень, где отрицательный массив добавляется к введенному юзером массиву так, чтоб отрицательные числа были слева. Сейчас у нас есть отсортированные отрицательные числа слева, но они также остались и на собственных начальных местах вначале введенного массива, необходимо избавиться от их;
9)Сравниваем два массива и, если нет дупликатов, добавляем их в окончательный массив result, при этом не трогая неотрицательные числа.
Главно: эта программа будет работать правильно, если все введенные числа будут уникальны, то есть не будут повторяться. Если в массиве будут повторяющиеся числа, то в окончательном итоге появится только одно такое число. Далее уж сам поколдуй как-нибудь.
-
Вопросы ответы
Статьи
Информатика
Статьи
Химия.
Русский язык.
Геометрия.
Физика.
Русский язык.
Химия.
Математика.
География.
Литература.
Разные вопросы.