Palindrome 프로그램 Python

Palindrome 프로그램이란? Python?

Palindrome은 위치가 바뀌어도 같은 값을 표시하는 문자열이나 숫자로 정의할 수 있습니다. 간단히 말해서, 반전해도 변경되지 않은 상태로 유지됩니다.

Example: deed, 101

반대 단어와 실제 단어(숫자 또는 문자열)를 비교하면 동일한 결과가 나타납니다.

회문 Python

회문의 종류

In Python 언어, Palindrome은 아래와 같이 세 가지 유형이 있습니다.

  • 다중 단어 회문: 이는 원래 단어와 반전된 단어의 값이 동일한 여러 단어의 조합입니다.
  • 단일 단어 회문: 원어와 반전어의 값이 동일한 단일어입니다.
  • 숫자 회문: 이것은 원래 숫자와 반전된 숫자의 값이 같은 숫자입니다. 주어진 입력은 정방향이나 역방향에서 동일하게 유지됩니다.

회문 수에 대한 알고리즘 Python

다음 알고리즘은 팰린드롬 숫자를 확인하는 데 적용될 수 있습니다.

단계 1) 변수 선언을 'I'하고 변수를 읽습니다.

단계 2) 할당 'I'를 임시 변수 j로 보냅니다. 나는=j

단계 3) 아래 표시된 지침에 따라 루프를 수행합니다. –

  • 남=나% 10
  • L=L x 10 + M
  • 나 = 나 / 10

단계 4) 임시 변수를 l과 비교합니다. 엘==J.

단계 5) 조건이 만족되면 회문이 되도록 숫자를 인쇄합니다.

단계 6) 조건이 만족되지 않으면 숫자를 회문이 아닌 것으로 인쇄합니다.

단계 7) 종료

위 알고리즘은 팰린드롬 숫자에 적용됩니다. Python.

방법 1: 회문 수 Python 역방향 슬라이싱 사용

뒤로 슬라이싱 인 Python 일반적으로 원본 프로그램의 하위 집합 문을 사용하는 것이 포함됩니다. 하위 집합 문도 루프를 사용할 수 있습니다. Python의 회문 프로그램은 역슬라이싱이 가능합니다.

다음 파이썬 프로그램은 역방향 루프를 사용하여 문자열이 팰린드롬인지 여부를 판별합니다.

Palindrome 문자열 프로그램 Python 암호:

a='deed'
lena=len(a)
b=[]
for i in range(lena - 1, -1, -1):
    b.append(a[i])
rev = "".join(b)
print(a + " is: ", end="")
if a == rev:
    print("Palindrome")
else:
    print("Not Palindrome")

출력:

deed is: Palindrome

Code 설명 :

  • The Python 코드는 주 문자열의 길이와 빈 문자열 b를 역순으로 추가하려고 시도합니다. Python 범위 기능.
  • 그런 다음 문자열 b는 문자열 구분 기호를 사용하여 빈 문자열 rev와 결합됩니다. ".

방법 2: Palindrome 프로그램 Python 플래그 사용

플래그 변수는 다음에서 정의할 수 있습니다. Python 팰린드롬을 식별합니다. 플래그는 0으로 초기화됩니다. 다음 프로그램은 플래그 매개변수의 사용을 보여줍니다.

Python Code Palindrome 프로그램의 경우:

Pld = "deed"
m = -1
flag = 0
for char in Pld:
    if char != Pld[m]:
        flag = 1
        break
    m = m - 1
print(Pld + " is: ", end="")
if flag:
    print("Not Palindrome")
else:
    print("Palindrome")
print(flag)

출력:

deed is: Palindrome

0

Code 설명 :

  • 문자는 Python 0 인덱스로 시작합니다.
  • m은 -1로 초기화되므로 문자열은 반대쪽부터 음수 인덱스로 읽혀집니다.
  • if 문이 포함된 for 루프는 문자열에 있는 인덱스 0으로 시작하는 각 문자가 문자열의 역방향 인덱스와 일치하는지 확인합니다.
  • 그러나 일치하지 않으면 프로그램은 플래그를 1로 초기화합니다. 일치하지 않으면 0으로 초기화합니다.

방법 3: Palindrome을 확인하세요. Python 문자를 반대로 하여

이 팰린드롬 프로그램에서 문자열을 반전하려면 char 메서드를 사용합니다. Python원래 문자열을 역방향 문자열과 비교하여 문자열이 팰린드롬인지 아닌지 판별합니다.

Python 팰린드롬 프로그램 Code:

Base = "123"
reverse = ""
for char in Base:
    reverse = char + reverse
print("Palindrome") if Base == reverse else print("Not Palindrome")
print("Original string is: " + str(Base))
print("reverse string is: " + str(reverse))
Base = "101"
reverse = ""
for char in Base:
    reverse = char + reverse
print("Palindrome") if Base == reverse else print("Not Palindrome")
print("Original string is: " + str(Base))
print("reverse string is: " + str(reverse))
Base = "deed"
reverse = ""
for char in Base:
    reverse = char + reverse
print("Palindrome") if Base == reverse else print("Not Palindrome")
print("Original string is: " + str(Base))
print("reverse string is: " + str(reverse))

출력:

Not Palindrome
The original string is: 123
The reverse string is: 321
Palindrome
The original string is: 101
The reverse string is: 101
Palindrome
The original string is: the deed
The reverse string is: the deed

Code 설명 :

  • Python의 str 함수는 숫자 값 형식을 문자열 형식으로 변환하는 데 도움이 됩니다. 프로그램은 먼저 값 123이 회문인지 여부를 확인합니다.
  • 그런 다음 값 101과 증서의 문자열 값을 확인합니다.
  • 코드는 값이 숫자 형식과 문자열 형식 모두에 대해 회문인지 확인합니다.

방법 4: Palindrome을 확인하는 방법 Python 문자 일치 사용

이 회문 방법에서 프로그램은 for 루프, range 함수 및 Len 함수를 사용하여 문자열의 각 문자가 역방향 문자열과 일치하는지 확인합니다.

Python 암호:

def PalindromeComparator(original):
    for i in range(0, len(original)):
        if original[i] != original[len(original) - i - 1]:
            return False
            return True
Base = "deed"
print("Palindrome") if PalindromeComparator(Base) else print("Not Palindrome")

출력:

Not Palindrome

Code 설명 :

  • Palindrome Comparator라고 표시된 사용자 정의 함수는 값이 문자열인지 여부를 확인합니다.
  • 이 프로그램은 다음을 사용하여 원래 문자열과 원래 문자열의 역을 비교합니다. 기준 원본[i]!= 원본[len(original) – i – 1].
  • 위의 프로그램은 길이 기술을 사용하여 문자열의 길이를 결정합니다.

방법 5: 회문 Python 재귀를 사용하여

In Python, 재귀는 함수가 특정 기준 세트에 따라 반복적으로 자신을 호출하는 것을 의미합니다. 이러한 방식으로 동일한 기능 구조를 사용하여 문제를 더 작은 문제로 나눌 수 있습니다. 재귀 프로그래밍 논리를 사용하면 회문 문자열도 확인할 수 있습니다.

Python 암호:

def palcomprec(number, oppo):
    if number == 0:
        return oppo
    remainder = int(number % 10)
    oppo = (oppo * 10) + remainder
    return palcomprec(int(number / 10), oppo)
Base = 12321
reverse = 0
reverse = palcomprec(Base, reverse)
print(str(Base) + " is: ", end="")
print("Palindrome") if reverse == Base else print("Not Palindrome")

출력:

12321 is: Palindrome

Code 설명 :

  • 프로그램은 자신을 재귀적으로 호출하는 사용자 정의 함수를 사용합니다.
  • 원래 숫자가 분해되고 잔차 값이 반대 값에 추가됩니다.
  • 반대 값에 먼저 10을 곱한 후 나머지 값을 더합니다.

방법 6: While 루프를 사용하여 회문을 확인하는 방법

while 루프는 적용된 조건이 true가 될 때까지 반복적으로 코드 실행을 수행합니다.

  • 반복 방법을 사용하여 정수 값이 회문인지 여부를 확인할 수 있습니다.
  • The Python 이 프로그램은 임시 숫자와 모듈로 연산자를 활용합니다.

Python 암호:

original = 101
temporary = original
reverse = 0
while temporary > 0:
    remainder = temporary % 10
    reverse = (reverse * 10) + remainder
    temporary = temporary // 10
if original == reverse:
  print('Palindrome')
else:
  print("Not Palindrome")

출력:

Palindrome

Code 설명 :

  • 프로그램은 임시 숫자가 XNUMX보다 작은지 확인하는 while 루프를 활용합니다.
  • 모듈로 연산자는 원래 숫자의 나머지를 계산합니다.
  • 원래 숫자는 10으로 나누어집니다.
  • 역방향 매개변수는 10을 곱하여 계산됩니다.
  • 결과 숫자가 잔차에 추가됩니다.
  • 위 프로그램은 원래 숫자와 반대 숫자를 확인하여 회문인지 아닌지를 분류합니다.

맺음말

  • Palindrome은 역방향에서 비교했을 때 순방향이 같아지는 값입니다. 다양한 수학 퍼즐에 사용됩니다.
  • 여러 가지 방법이 채택될 수 있습니다. Python 값이 팰린드롬인지 아닌지 비교합니다. 사용된 기술은 다음과 같습니다. – 역방향 슬라이싱, 문자 매칭, 재귀, 루프 사용, rev, Len 및 str 함수, 사전 정의된 함수, 재귀 등

이 게시물을 요약하면 다음과 같습니다.