• 1
    Ввод и вывод данных
    • Задачи
  • 2
    Условия
    • Задачи
  • 3
    Цикл for
    • Задачи
  • 4
    Строки
    • Задачи
  • 5
    Цикл while
    • Задачи
  • 6
    Списки
    • Задачи
  • 7
    Двумерные массивы
    • Задачи
  • 8
    Словари
    • Задачи
  • 9
    Множества
    • Задачи
  • 10
    Функции и рекурсия
    • Задачи
  • к

Занятие 2. Условия

Уровень сложности:

иконка человека красный иконка человека белая иконка человека зеленая Pythonlib

Задача«Автоматическая сортировка»

Вы — младший научный сотрудник в передовой лаборатории. Каждый день вы проводите эксперименты и получаете наборы числовых данных. Протокол анализа требует разного подхода в зависимости от общего результата серии измерений.

Главный научный руководитель установил простое правило: если сумма всех измерений за день является четным числом, это говорит о стабильности процесса, и данные нужно проанализировать в порядке возрастания. Если же сумма нечетная, это может указывать на аномалию, и для выявления выбросов самые большие значения нужно изучить в первую очередь, то есть отсортировать данные по убыванию.

Ваша задача — написать программу, которая автоматизирует этот первичный этап сортировки данных.

Программа должна принять на вход строку, содержащую целые числа, разделенные пробелами. Необходимо определить, является ли сумма этих чисел четной или нечетной. Если сумма четная, программа должна вывести эти числа, отсортированные по возрастанию. Если нечетная — по убыванию.

Формат ввода

Набор экспериментальных данных (строка целых чисел, разделенных пробелом).

Формат Вывода

Отсортированный набор данных (строка целых чисел, разделенных пробелом).

Пример

Ввод

5 2 8 1

Вывод

1 2 5 8

Подсказка

Тут подсказки не будет, решай сам!

main.py
Тест 1
Тест 2
Тест 3
Тест 4
Тест 5
Тест 6
Тест 7
Тест 8
Тест 9
Тест 10
Решение разработчика
# Считываем строку, разделяем её по пробелам и преобразуем каждый элемент в целое число,
# создавая таким образом список чисел.
data = [int(s) for s in input().split()]

# Вычисляем сумму всех чисел в списке.
total_sum = sum(data)

# Проверяем, является ли сумма четной (остаток от деления на 2 равен 0).
if total_sum % 2 == 0:
    # Если сумма четная, сортируем список по возрастанию.
    data.sort()
else:
    # Если сумма нечетная, сортируем список по убыванию.
    data.sort(reverse=True)

# Выводим элементы списка через пробел. Звездочка (*) перед data "распаковывает"
# список, передавая его элементы в print как отдельные аргументы.
print(*data)

🎉 Поздравляем! 🎉

Ты отлично справился с задачей! Это был непростой вызов, но ты нашёл правильное решение. Ты на шаг ближе к мастерству в программировании! Продолжай в том же духе, ведь каждый пройденный этап делает тебя ещё сильнее.

AD

Реклама

red-snake blue-snake green-snake

Запускаем ваш код...

Помощник ИИ

Привет! Я твой помощник по программированию. Задавай любые вопросы по Python, я могу рассказать о функциях, методах, обьяснить то, что тебе не понятно, а так же о текущей задаче!