generate functionTue, 04 Apr 2023

Напишите программу, на вход которой подаётся список чисел одной строкой. Программа должна для каждого элемента этого списка вывести сумму двух его соседей. Для элементов списка, являющихся крайними, одним из соседей считается элемент, находящий на противоположном конце этого списка. Например, если на вход подаётся список "1 3 5 6 10", то на выход ожидается список "13 6 9 15 7" (без кавычек). Если на вход пришло только одно число, надо вывести его же. Вывод должен содержать одну строку с числами нового списка, разделёнными пробелом.

def list_sum(list_): if len(list_) == 1: return list_[0] else: if len(list_) == 2: return list_[0] + list_[1] else: return list_[0] + list_[-1] lst = list(map(int, input().split())) lst_ = [list_sum(lst[:i] + lst[i+1:]) for i in range(len(lst))] print(' '.join(map(str,lst_)))

Questions about programming?Chat with your personal AI assistant