Возьмем произвольное слово и выполним следующую операцию: поменяем местами первую согласную букву с последней согласной
Возьмем произвольное слово и выполним следующую операцию: поменяем местами первую согласную букву с последней согласной буквой, вторую согласную букву с предпоследней согласной буквой и так далее. Если после этой операции получится исходное слово, то такое слово будет считаться негласным палиндромом. Например, слова sos, rare, rotor, gong, karaoke являются негласными палиндромами. Напишите программу, которая определит, является ли заданное слово негласным палиндромом. Вводные данные: введите одно слово. Результат выполнения программы: программа должна вывести
24.11.2024 10:36
Объяснение:
Негласное палиндромное слово - это слово, которое остается неизменным после замены каждого согласного символа на соответствующий символ, стоящий на том же отдалении от начала и конца слова. Для решения этой задачи мы можем использовать следующий алгоритм:
1. Получите входное слово от пользователя.
2. Создайте список согласных букв из введенного слова.
3. Создайте копию списка согласных букв.
4. Инвертируйте копию списка согласных букв.
5. Сравните первоначальный список согласных букв с инвертированной копией. Если они равны, то слово является негласным палиндромом, в противном случае - нет.
6. Выведите результат на экран.
Пример:
Введите слово: рекорд
Да, слово "рекорд" является негласным палиндромом.
Совет:
Для реализации этой программы можно использовать циклы, условные операторы и функции работы со строками. Разбейте задачу на более мелкие шаги и решите каждый шаг по отдельности.
Задача для проверки:
Напишите программу на питоне, которая будет проверять, является ли введенное слово негласным палиндромом.```
import re
def is_nonvocal_palindrome(word):
vowels = ["a", "e", "i", "o", "u"]
non_vowels = [c for c in word if c.lower() not in vowels]
inverted_non_vowels = list(reversed(non_vowels))
return non_vowels == inverted_non_vowels
word = input("Введите слово: ")
if is_nonvocal_palindrome(word):
print(f"Да, слово "{word}" является негласным палиндромом.")
else:
print(f"Нет, слово "{word}" не является негласным палиндромом.")