Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

재귀를 사용하여 문자열이 회문인지 여부를 확인하는 Python 프로그램

<시간/>

문자열이 회문인지 재귀 기법을 사용하지 않는지 확인해야 하는 경우 단순 인덱싱 및 사용자 정의 함수와 함께 재귀를 사용합니다.

회문은 왼쪽에서 오른쪽으로, 오른쪽에서 왼쪽으로 읽을 때 각각의 인덱스에서 동일한 문자를 갖는 문자열 또는 값입니다.

재귀는 더 큰 문제의 작은 비트의 출력을 계산하고 이러한 비트를 결합하여 더 큰 문제에 대한 솔루션을 제공합니다.

아래는 동일한 데모입니다 -

def check_palindrome(my_str):
   if len(my_str) < 1:
      return True
   else:
      if my_str[0] == my_str[-1]:
         return check_palindrome(my_str[1:-1])
      else:
         return False
my_string = str(input("Enter the string :"))
print("The string is ")
print(my_string)
if(check_palindrome(my_string)==True):
   print("The string is a palindrome")
else:
   print("The string isn't a palindrome")

출력

Enter the string : MalaM
MalaM
The string is
MalaM
The string is a palindrome

설명

  • 'check_palindrome'이라는 메서드는 문자열을 매개변수로 사용합니다.
  • 문자열의 크기가 1보다 작으면 'True'가 출력으로 반환됩니다.
  • 그렇지 않으면 문자열의 마지막 요소가 첫 번째 요소와 일치하는지 확인하기 위해 검사됩니다.
  • 메소드는 두 번째 인덱스에서 마지막 인덱스까지 요소에 대해 다시 호출됩니다. 여기서 마지막 인덱스 값은 의도적으로 제외됩니다.
  • 그렇지 않으면 함수가 false를 반환합니다.
  • 함수 외부에서 사용자에게 문자열을 입력하라는 메시지가 표시됩니다.
  • 이 문자열은 콘솔에 표시됩니다.
  • 이 문자열을 매개변수로 전달하여 메서드를 호출합니다.
  • 값이 'True'로 계산되면 콘솔에 해당 메시지가 표시됩니다.
  • 그렇지 않으면 콘솔에 다른 메시지가 표시됩니다.