Как вывести данные в виде списка? Выводит только последнее число / последний список. for n in range(4, 10001):
s = '8'+ '4'*n
while ('11' in s) or ('444' in s) or ('8888' in s):
if '11' in s:
s = s.replace('11', '4')
if '444' in s:
s = s.replace('444', '88')
if '8888' in s:
s = s.replace('8888', '1')

sp = []
k = 0
for j in s:
k = k+int(j)
sp.append(k)
print(sp)
вывод: [1, 5, 9, 17, 25, 33, 37]

24 Июл 2024 в 19:40
111 +1
1
Ответы
1

Для вывода данных в виде списка, вам нужно объявить список за пределами цикла и добавлять в него значения внутри цикла. Вот исправленный код:

sp = []
for n in range(4, 10001):
s = '8'+ '4'*n
while ('11' in s) or ('444' in s) or ('8888' in s):
if '11' in s:
s = s.replace('11', '4')
if '444' in s:
s = s.replace('444', '88')
if '8888' in s:
s = s.replace('8888', '1')
k = 0
for j in s:
k = k + int(j)
sp.append(k)
print(sp)

Теперь при выполнении этого кода, вы увидите список, содержащий все значения, а не только последнее.

17 Сен 2024 в 13:01
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир