Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/25: Рейтинг темы: голосов - 25, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 28.03.2022
Сообщений: 22

В списке с четными и нечетными числами. отсортировать четные по возр, нечетные - по убыванию

26.04.2022, 15:24. Показов 6461. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Попалась задачка.
#Напишите программу, в которой создается числовой список.
# Список заполняется случайными числами. Затем элементы с четными
# индексами сортируются в порядке возрастания,
# а элементы с нечетными индексами сортируются в порядке убывания.
Ничего более умного, чем разбить на списки четных и нечетных и отсортировать не приходит. Можно ли это сделать в рамках одного списка?
Вот как у меня:
Python
1
2
3
4
5
6
7
8
9
A=[12,13,4,7,18,21,9,56,8,9,17,29,34]
 
B = [i for i in range(1,len(A)) if i%2==0]
B.sort()
print(B)
 
C = [i for i in range(1,len(A)) if not i%2==0]
C.sort(reverse=True)
print(B+C)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.04.2022, 15:24
Ответы с готовыми решениями:

Разделить элементы массива на четные и нечетные, и отсортировать четные по возрастанию а нечетные по убыванию
Разделить элементы массива на четные и нечетные, и отсортировать четные по возростанию а нечетные по убыванию (можно без использования...

Элементы с четными индексами отсортировать по возрастанию, с нечетными - по убыванию.
Ввести массив из 20 чисел. Элементы с четными индексами отсортировать по возрастанию, с нечетными - по убыванию.

Отсортировать элементы массива, с чётными индексами - по возрастанию, с нечётными - по убыванию
Организуйте массив содержащий 20 целых чисел. Отсортируйте отдельно элементы с четными инднксами по возрастанию, и элементы с нечетными...

16
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
26.04.2022, 19:12
Цитата Сообщение от Miguel_1988 Посмотреть сообщение
Ничего более умного, чем разбить на списки четных и нечетных и отсортировать не приходит. Можно ли это сделать в рамках одного списка?
Напишите, что должна выдать программа. Полностью условие. Можно прямо на примере вашего же списка. Напишите ответ. Конкретно, что должно получиться.
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
26.04.2022, 19:29
Python
1
2
3
4
a = [12, 13, 4, 7, 18, 21, 9, 56, 8, 9, 17, 29, 34]
a[::2] = sorted(a[::2])
a[1::2] = sorted(a[1::2], reverse=True)
print(a)
4
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
26.04.2022, 19:39
Python
1
2
3
4
from itertools import zip_longest
a = [12, 13, 4, 7, 18, 21, 9, 56, 8, 9, 17, 29, 34]
a = [j for i in zip_longest(sorted(a[::2]), sorted(a[1::2], reverse=True)) for j in i if j is not None]
print(a)
0
 Аватар для Semen-Semenich
5224 / 3471 / 1173
Регистрация: 21.03.2016
Сообщений: 8,298
26.04.2022, 19:52
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
def main_sort(index):
    for i in range(len(A)):
        if (not A[i]% 2 and not index %2) and A[index] < A[i]:
            A[index], A[i] =  A[i], A[index]
        elif  (A[i]% 2 and index %2) and A[index] > A[i]:
            A[index], A[i] =  A[i], A[index]
        
    
A = [12,13,4,7,18,21,9,56,8,9,17,29,34]
for index in range(len(A)):
        main_sort(index)
 
print(A)
Добавлено через 4 минуты
anton78spb, есть косячок
[4, 56, 8, 29, 9, 21, 12, 13, 17, 9, 18, 7, 34] что то идет не так. у меня кстати тоже. сразу не заметил

[4, 29, 8, 21, 12, 13, 17, 9, 18, 9, 34, 7, 56]
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
26.04.2022, 20:12
Semen-Semenich, давайте разбираться.
Семен Семенович, не врубаюсь, где косяк, ответ не верный?
Взял код от уважаемого eaa. Запустил последовательно. С ним результат совпадает.
Python
1
2
3
4
5
6
7
8
9
a = [12, 13, 4, 7, 18, 21, 9, 56, 8, 9, 17, 29, 34]
a[::2] = sorted(a[::2])
a[1::2] = sorted(a[1::2], reverse=True)
print(a)
 
from itertools import zip_longest
a = [12, 13, 4, 7, 18, 21, 9, 56, 8, 9, 17, 29, 34]
a = [j for i in zip_longest(sorted(a[::2]), sorted(a[1::2], reverse=True)) for j in i if j is not None]
print(a)
Code
1
2
[4, 56, 8, 29, 9, 21, 12, 13, 17, 9, 18, 7, 34]
[4, 56, 8, 29, 9, 21, 12, 13, 17, 9, 18, 7, 34]
0
 Аватар для Semen-Semenich
5224 / 3471 / 1173
Регистрация: 21.03.2016
Сообщений: 8,298
27.04.2022, 09:45
anton78spb,
Цитата Сообщение от Miguel_1988 Посмотреть сообщение
отсортировать четные по возр
[4, 56, 8, 29, 9, 21, 12, 13, 17, 9, 18, 7, 34] как то не очень сортировка
Цитата Сообщение от Miguel_1988 Посмотреть сообщение
нечетные - по убыванию
[4, 56, 8, 29, 9, 21, 12, 13, 17, 9, 18, 7, 34] совсем не по убыванию. что я и заметил в своем выводе

[4, 29, 8, 21, 12, 13, 17, 9, 18, 9, 34, 7, 56]с четными вроде все что нужно а вот нечетные загвоздка
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38171 / 21106 / 4307
Регистрация: 12.02.2012
Сообщений: 34,699
Записей в блоге: 14
27.04.2022, 09:48
Интереснее, если чётный/нечётный относится не к позиции, а к значению...
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
27.04.2022, 09:48
Semen-Semenich, четные и нечетные индексы, а не элементы
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
27.04.2022, 09:52
Semen-Semenich, Так в условии говорится, что надо отсортировать по возрастанию элементы с четными индексами, а с нечетными индексами по убыванию. Не четные и нечетные значения элементов. А именно с четными и нечетными индексами. Вроде все верно работает. Или я чего-то не замечаю?
[4, 56, 8, 29, 9, 21, 12, 13, 17, 9, 18, 7, 34]
Красные по возрастанию. Черные по убыванию.
0
 Аватар для Semen-Semenich
5224 / 3471 / 1173
Регистрация: 21.03.2016
Сообщений: 8,298
27.04.2022, 09:53
iSmokeJC, про индексы ни слова
Цитата Сообщение от Miguel_1988 Посмотреть сообщение
В списке с четными и нечетными числами. отсортировать четные по возр, нечетные - по убыванию
и где про индексы? все про числа. хотя автор в своем коде пытается с индексами
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
27.04.2022, 10:09
Semen-Semenich, Ну вот же, в первом посте.
Цитата Сообщение от Miguel_1988 Посмотреть сообщение
# Список заполняется случайными числами. Затем элементы с четными
# индексами сортируются в порядке возрастания,
# а элементы с нечетными индексами сортируются в порядке убывания.
Последнее слово в первой строке цитаты, и первое во второй. Также второе и третье слова, не считая предлогов в третьей строке.
0
 Аватар для Semen-Semenich
5224 / 3471 / 1173
Регистрация: 21.03.2016
Сообщений: 8,298
27.04.2022, 10:13
anton78spb, читаю заголовок задачи а дальше не читал. теперь буду читать всю писанину. там правда такой бред особенно с ял задачи.. надо же так условие одно а дальше совсем другое.
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
27.04.2022, 10:13
Цитата Сообщение от Miguel_1988 Посмотреть сообщение
элементы с четными
# индексами
сортируются в порядке возрастания,
# а элементы с нечетными индексами сортируются в порядке убывания.
Semen-Semenich, да вообще именно про индексы написано.
Цитата Сообщение от Semen-Semenich Посмотреть сообщение
В списке с четными и нечетными числами. отсортировать четные по возр, нечетные - по убыванию
Этого текста вообще нет. Украли...
О, блин, а я тему не прочитал...
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
27.04.2022, 10:13
Я понял, вы только заголовок прочитали. Там действительно про индексы ни слова. А дальше в посте, речь идет уже про индексы.
0
 Аватар для Semen-Semenich
5224 / 3471 / 1173
Регистрация: 21.03.2016
Сообщений: 8,298
27.04.2022, 10:18
Пифагор, у меня есть и так крупно
ну ладно разобрались.
0
 Аватар для Semen-Semenich
5224 / 3471 / 1173
Регистрация: 21.03.2016
Сообщений: 8,298
27.04.2022, 10:20
Цитата Сообщение от Пифагор Посмотреть сообщение
О, блин, а я тему не прочитал...
а я тему прочитал а дальше не стал
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.04.2022, 10:20
Помогаю со студенческими работами здесь

Отсортировать чётные элементы по возрастанию, а нечётные по убыванию
Вот условие(могу кое где ошибаться в правильности постановки задачи) Составить одномерный массив, в котором бы выводилось 20(или более)...

Нечетные числа массива отсортировать по возрастанию, а четные по убыванию
Добрый день, уважаемые программисты и разработчики C++. Вот такая задача стоит : разработать программу, в которой необходимо ввести...

Отсортировать список (четные варианты – по возрастанию, нечетные – по убыванию)
Создать динамический список, из чисел, вводимых с клавиатуры (признак конца ввода – CTRL+Z). Отсортировать список (четные варианты – по...

Отсортировать четные элементы массива по возрастанию, а нечетные по убыванию
Отсортировать четные элементы массива по возрастанию, а нечетные по убыванию

Отсортировать четные элементы массива по возрастанию, а нечетные по убыванию
По четным по возрастанию по нечетным по убыванию. Пробую пузырьковую сортировку не получается(


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru