Проверка на палиндром
Информатика

Проверка на палиндром Напишите код, который определит, является ли введенное слово (без пробелов) палиндромом, то есть

Проверка на палиндром Напишите код, который определит, является ли введенное слово (без пробелов) палиндромом, то есть проверит, читается ли оно одинаково слева направо и справа налево. Входные данные Входная строка содержит слово — последовательность символов без пробелов. Результат выполнения Если слово является палиндромом, выведите слово "YES". Если слово не является палиндромом, выведите слово "NO". Примеры Ввод Вывод kazak YES banan NO Python
Верные ответы (1):
  • Gosha
    Gosha
    10
    Показать ответ
    Предмет вопроса: Проверка на палиндром

    Описание:

    Чтобы определить, является ли введенное слово палиндромом, нужно проверить, равна ли последовательность символов в слове, читаемая справа налево, последовательности символов в этом же слове, читаемая слева направо.

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

    Мы будем двигать указатель на начало слова вперед и указатель на конец слова назад, сравнивая символы, которые они указывают. Если символы равны, мы продолжаем двигаться вперед и назад, иначе слово не является палиндромом.

    Если указатели пересеклись (то есть указатель на начало слова больше или равен указателю на конец слова), это означает, что мы проверили все символы и слово является палиндромом.

    Например:


    word = "kazak"
    # Удаляем пробелы и приводим к нижнему регистру
    word = word.replace(" ", "").lower()

    start = 0
    end = len(word) - 1

    is_palindrome = True

    while start < end:
    if word[start] != word[end]:
    is_palindrome = False
    break
    start += 1
    end -= 1

    if is_palindrome:
    print("YES")
    else:
    print("NO")


    Совет:

    Чтобы лучше понять работу алгоритма, вы можете взять несколько примеров слов и выполнить алгоритм вручную, следуя шагам, чтобы убедиться, что вы правильно поняли его работу.

    Задача на проверку:

    Напишите код, чтобы определить, является ли введенное слово палиндромом. Входное слово будет введено пользователем с клавиатуры. Выведите "YES", если слово является палиндромом, и "NO", если слово не является палиндромом.
Написать свой ответ: