Предмет: Информатика, автор: tyukova123a7

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

Ответы

Автор ответа: daniil062
1

# получаем строку со входными данными

input_str = input()

# разбиваем строку на список целых чисел

num_list = list(map(int, input_str.split()))

# преобразуем список, вставляя ноль после элементов, кратных своему индексу

for i in range(len(num_list)):

   if i != 0 and i % num_list[i-1] == 0:

       num_list.insert(i, 0)

# выводим элементы преобразованного списка через пробел

print(" ".join(map(str, num_list)))


tyukova123a7: Выдаёт ошибку в условии if
Автор ответа: Аноним
0

Ответ:
На изображении

   

Приложения:

tyukova123a7: В новый список вы добавляете только нули, числа которые были остаются, просто после них добавляется 0
Аноним: Подождите... суть задания, в том, чтобы скопировать в список из строки каждый элемент, и после каждого элемента, кратного его индексу добавить 0, я правильно понимаю?
Т.е. строка "1 1 8 3 5" должна вам выдать список "1, 1, 0, 8, 0, 3, 0, 5"?
Если да, то именно это, код и делает. Сами числа добавляются на 4й строке, ноль добавляется 6й.
Объясните, что по вашему не так.
Похожие вопросы
Предмет: Алгебра, автор: mortynskiy