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

이진 표현이 회문인지 확인하는 Python 프로그램?

<시간/>

여기서 우리는 다른 파이썬 내장 함수를 사용합니다. 먼저 bin()을 사용하여 숫자를 이진수로 변환한 다음 문자열의 이진 형식을 역전시켜 원본과 비교하고 일치하면 회문을 그렇지 않으면 회문과 비교합니다.

예시

Input: 5
Output: palindrome

설명

5의 이진 표현은 101입니다.

그것을 반대로 하면 결과가 101이 되고, 원본과 비교하여 일치시킵니다.

그래서 회문

알고리즘

Palindromenumber(n)
/* n is the number */
Step 1: input n
Step 2: convert n into binary form.
Step 3: skip the first two characters of a string.
Step 4: them reverse the binary string and compare with originals.
Step 5: if its match with originals then print Palindrome, otherwise not a palindrome.

예시 코드

# To check if binary representation of a number is pallindrome or not
defpalindromenumber(n): 
   # convert number into binary bn_number = bin(n)      
   # skip first two characters of string
   # Because bin function appends '0b' as 
   # prefix in binary 
   #representation of a number bn_number = bn_number[2:]
   # now reverse binary string and compare it with original
   if(bn_number == bn_number[-1::-1]):
      print(n," IS A PALINDROME NUMBER")
   else:
      print(n, "IS NOT A PALINDROME NUMBER")
# Driver program
if __name__ == "__main__":
   n=int(input("Enter Number ::>"))
   palindromenumber(n)

출력

Enter Number ::>10
10 IS NOT A PALINDROME NUMBER
Enter Number ::>9
9 IS A PALINDROME NUMBER