Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
1 / 1 / 0
Регистрация: 08.07.2022
Сообщений: 87

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

21.07.2022, 11:18. Показов 3110. Ответов 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
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,323
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
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,323
21.07.2022, 13:48
выбор не велик)) зато про любовь
0
1 / 1 / 0
Регистрация: 08.07.2022
Сообщений: 87
21.07.2022, 13:49  [ТС]
Да может еще есть)
0
 Аватар для VistaSV30
987 / 331 / 79
Регистрация: 10.04.2012
Сообщений: 1,239
Записей в блоге: 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
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru