Форум сайта python.su
0
Условие
Дан список целых чисел, число k и значение C. Необходимо вставить в список на позицию с индексом k элемент, равный C, сдвинув все элементы, имевшие индекс не менее k, вправо.
Поскольку при этом количество элементов в списке увеличивается, после считывания списка в его конец нужно будет добавить новый элемент, используя метод append.
Вставку необходимо осуществлять уже в считанном списке, не делая этого при выводе и не создавая дополнительного списка.
Помогите пожалуйста, никак не могу сдвинуть элементы, к специальным функциям прибегать нельзя.
Офлайн
0
Список х
help(list.insert) k=3 C='dfsdfds' x=[0,1,2,3,4] x.insert(k,C) print(x)
Офлайн
0
man1985ваш код несомненно работает, но надо это сделать не прибегая к процедуре insert и потом добавить последний элемент с помощью append
Список х
Офлайн
0
Тогда надо делать перебор элементов списка в цикле (i - индекс) , начиная с последнего до k+1, в теле цикла копировать значения вправо:
x[i+1]=x[i]
x[k]=С
Отредактировано man1985 (Авг. 14, 2018 13:19:57)
Офлайн
0
Отредактировано T.U.M.H.O (Авг. 16, 2018 11:51:17)
Прикреплённый файлы:
Снимок.PNG (23,9 KБ)
Офлайн