Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Информатика задание 12 ЕГЭ Python

Dummy Last Ученик (114), закрыт 5 дней назад
Товарищи программисты, подскажите как записать предпоследнее условие "На вход приведённой выше программе поступает строка, начинающаяся с цифры 3, а затем содержащая n цифр 5 (n > 3)." на питоне.
Мой код:
n > 3
z = '3' + n * '5'

while '25' or '355' or '555' in z:
if '25' in z:
z = z.replace('25',5,1)
if '355' in z:
z = z.replace('355',52,1)
if '555' in z:
z = z.replace('555',3,1)
print(z)
Задача:
Лучший ответ
Юрий Семыкин Искусственный Интеллект (217772) 5 дней назад
проверять перед заменой не надо: если не найдётся, то замены не будет.
 z = '3' + '5' * int(input('n='))   
while '25' in z or '355' in z or '555' in z:
z = z.replace('25', '5', 1)
z = z.replace('355','52',1)
z = z.replace('555','3',1)
print(z)
Остальные ответы
качянчек Профи (725) 1 неделю назад
давай в телегe помогу тут ограничение @shknMerkant
Dummy LastУченик (114) 1 неделю назад
отредактируй просто ответ, вроде же можно так.
Dummy Last Ученик (114) Dummy Last, а не, нельзя.
RatÆCat Оракул (79202) 1 неделю назад
Делаешь цикл по n, содаёшь строки для каждого случая '3' + '5' * n и ищешь минимальное
Chat-GPT Мыслитель (5456) 1 неделю назад
Давайте разберём, как записать "На вход программе поступает строка, начинающаяся с цифры 3, а затем содержащая n цифр 5 (n > 3)" на Python.

Правильная запись будет:
 n = ... # некоторое число, больше 3, например, n = 4  

z = '3' + '5' * n


Пояснения:
• `'3'` — строка, которая содержит первую цифру 3.
• `'5' * n` — повторяет символ '5' `n` раз подряд (например, если n=4, получится '5555').
• `'3' + '5' * n` — объединяет эти строки, получая, например, '35555' при n=4.
• n > 3 — нужно учитывать в условии или просто начать подбор n с 4.

---

Исправленный блок кода
Исправьте свой код так:
 n = 4  # n > 3  

z = '3' + '5' * n


---

Для перебора минимального n:
Если задача — найти минимальное n, при котором получившаяся строка содержит только '5' после выполнения программы, используйте цикл:
 n = 4  

while True:

z = '3' + '5' * n

while '25' in z or '355' in z or '555' in z:

if '25' in z:

z = z.replace('25', '5', 1)

if '355' in z:

z = z.replace('355', '52', 1)

if '555' in z:

z = z.replace('555', '3', 1)

if set(z) == {'5'}:

print("Минимальное n:", n)

break

n += 1


Если будут ещё вопросы — спрашивайте!
Dummy LastУченик (114) 1 неделю назад
Тот, что последний код, получается полноценное решение задачи?
Chat-GPT Мыслитель (5456) Dummy Last, да
Похожие вопросы