1 / 1 / 0
Регистрация: 08.07.2022
Сообщений: 87

Словесный палиндром

21.07.2022, 11:18. Показов 3411. Ответов 29

Студворк — интернет-сервис помощи студентам
Добрый день. Подскажите пожалуйста, почему закомментированный код не работает, а цикл while, который, как мне кажется, такой же, работает? Как поправить закомментированный код, чтобы и он тоже работал.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import re
 
i = 0
is_Palindrom = True
line = input('Введите предложение: ')
line = line.lower()
line = re.sub(r'[^\w\s]', '', line)
 
b = ''.join(line).split()
a = len(b)
 
# print(a)
# print(b)
 
while i < a/2 and is_Palindrom:
    if b[i] != b[a - i - 1]:
        is_Palindrom = False
    i = i + 1
 
# for i in b:
#     if b[i] == b[a - i - 1]:
#         is_Palindrom = True
#     i = i + 1
 
if is_Palindrom:
    print('Это предложение палиндром')
else:
    print('Предложение не является палиндромом')
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.07.2022, 11:18
Ответы с готовыми решениями:

Палиндром
Прошу помочь в решении задачи! Дано слово (все буквы строчные). Выведите: слово YES, если исходное слово является палиндромом (слово,...

Палиндром
Дано слово, состоящее только из заглавных и строчных латинских букв. Проверьте, верно ли, что это слово читается одинаково как справа...

Палиндром
Назовем натуральное число палиндромом, если в его десятичной записи все цифры расположены симметрично (совпадают первая и последняя...

29
1 / 1 / 0
Регистрация: 08.07.2022
Сообщений: 87
21.07.2022, 13:35  [ТС]
Студворк — интернет-сервис помощи студентам
Дело в том, что сама задача стоит чуть иначе, нужен не перебор букв, а именно слов. Вот такое предложение - палиндром: Herb the sage eats sage, the herb

Добавлено через 44 секунды
Хочу заменить, что с while у меня всё работало

Добавлено через 1 минуту
Если не объединять, программа каждую букву выводит отдельно на каждой строке
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.07.2022, 13:35
Вот с этого и надо было начинать...
0
1 / 1 / 0
Регистрация: 08.07.2022
Сообщений: 87
21.07.2022, 13:36  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Вот с этого и надо было начинать...
Да, мой косяк)
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.07.2022, 13:38
Тем не менее, поменять достаточно ввод. Код принципиально остается тот же
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import re
 
isPalindrome = True
b = re.sub(r'[^\w\s]', '', input('Введите предложение: ').lower()).split()
a = len(b)
 
for i in range(a // 2):
    if b[i] != b[a - i - 1]:
        isPalindrome = False
        break
 
if isPalindrome:
    print('Это предложение палиндром')
else:
    print('Предложение не является палиндромом')
1
1 / 1 / 0
Регистрация: 08.07.2022
Сообщений: 87
21.07.2022, 13:40  [ТС]
Да я уже догадалась, спасибо, и всё поправила))
0
1713 / 580 / 76
Регистрация: 10.04.2009
Сообщений: 9,337
21.07.2022, 13:42
Цитата Сообщение от lena_torez Посмотреть сообщение
нужен не перебор букв, а именно слов
хозяин барин-ТС, приведите пару примеров, где по словам будет оно-палиндром, я понимаю, что можно найти, но видимо их немного))
0
1 / 1 / 0
Регистрация: 08.07.2022
Сообщений: 87
21.07.2022, 13:47  [ТС]
Ну у меня в книжке только английские.
Is it crazy how saying sentences backwards creates backwards sentences saying how crazy it is?
Herb the sage eats sage, the herb
Information school graduate seeks graduate school information

Добавлено через 2 минуты
Во, нашла русский) Я не любил ее, ее любил не я…
0
1713 / 580 / 76
Регистрация: 10.04.2009
Сообщений: 9,337
21.07.2022, 13:48
выбор не велик)) зато про любовь
0
1 / 1 / 0
Регистрация: 08.07.2022
Сообщений: 87
21.07.2022, 13:49  [ТС]
Да может еще есть)
0
 Аватар для VistaSV30
988 / 332 / 79
Регистрация: 10.04.2012
Сообщений: 1,252
Записей в блоге: 4
21.07.2022, 15:54
Вариант для всяких разных палиндромов
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import re 
 
s = '''Ну у меня в книжке только английские.
Is it crazy how saying sentences backwards creates backwards sentences saying how crazy it is?
Herb the sage eats sage, the herb
Information school graduate seeks graduate school information
А, роза упала на лапу Азора!
Вот совхозу пузо хвостов.
Вот'с "Искра" марксистов.
Гене давал Слава денег.
Генсеку, суке, - снег.
Геолог влетел в голое г...
Гни скобки, кикбоксинг.
Гнид у пана на пудинг.
Гонококк - око ног.
Гори, пирог!
Город - и нет тени дорог.
Город массам дорог.
Город у рва мавру дорог.
Madam, I'm Adam
A man, a plan, a canal-Panama
Я не любил ее, ее любил не я…'''
 
 
def is_palindromeWord(tx):
    a = re.sub(r'[^\w\s]','', tx).lower()
    b = list(a.split())
    return b == b[::-1]
 
def is_palindrome(tx):
    t1 = ''.join(filter(str.isalnum, tx)).lower()
    return t1 == t1[::-1]
 
print('Палиндромы:')
for i in s.splitlines():
    if is_palindromeWord(i): print(i, '-', 'по словам')
    elif is_palindrome(i): print(i, '-', 'по буквам')
    else: print(i, '- просто фраза')
4
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.07.2022, 15:54

Палиндром
Суть задачи в том что бы проверить является ли число палиндромом, если да то вывести это число, если нет то вывести ближайшее число по...

Палиндром
&quot;Introduction to C++&quot;. Одна из задач дисциплины звучит следующим образом: нужно узнать, является ли шестизначное число палиндромом....

Палиндром
Всем доброго времени суток! Пытаюсь написать программу, которая бы распечатывала введённые слова до первого встретившегося слова,...

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

Наибольший палиндром
В заданной строке найдите длину наибольшей подстроки (отрезка подряд идущих символов строки), которая является палиндромом, то есть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Опции темы

Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru