a = [int(input()) for _ in range(10)] # запрашиваем ввод элементов циклом
counter, res = 0, [] # объявляем счётчик и результирующий список
for i in a: # перебираем по-элементно список
if i < 0: # если значение текущей итерации меньше нуля, увеличиваем счетчик и заменяем его на 100
counter += 1
i = 100
res.append(i) # кидаем значение в наш новый (результирующий) список
print(f"Всего замен: {counter}.")
print(res)
С точки зрения оптимизации ресурсов, конечно, лучше делать это все сразу в цикле ввода, чтобы не перебирать цикл ещё раз. Но в задании сказано «ввввести, заменить» (то есть заменить после ввода, а не во время). Но в идеале было бы так:
Answers & Comments
Ответ:
a = [int(input()) for _ in range(10)] # запрашиваем ввод элементов циклом
counter, res = 0, [] # объявляем счётчик и результирующий список
for i in a: # перебираем по-элементно список
if i < 0: # если значение текущей итерации меньше нуля, увеличиваем счетчик и заменяем его на 100
counter += 1
i = 100
res.append(i) # кидаем значение в наш новый (результирующий) список
print(f"Всего замен: {counter}.")
print(res)
С точки зрения оптимизации ресурсов, конечно, лучше делать это все сразу в цикле ввода, чтобы не перебирать цикл ещё раз. Но в задании сказано «ввввести, заменить» (то есть заменить после ввода, а не во время). Но в идеале было бы так:
counter, res = 0, []
for _ in range(10):
i = int(input())
if i < 0:
counter += 1
i = 100
res.append(i)
print(f"Всего замен: {counter}.")
print(res)