Hôm nay chúng ta sẽ tìm hiểu về chuỗi palindrome và cách triển khai và xác định một palindrome trong Python. Vì vậy, hãy đi sâu vào nó
Palindrom là gì?
Một số được định nghĩa là số Palindrome nếu nó đọc giống hệt nhau từ cả phía trước và phía sau. Và điều điên rồ là nó không chỉ có giá trị với những con số. Ngay cả khi một chuỗi đọc xuôi và ngược giống nhau, thì đó cũng là một Palindrome
Hãy để chúng tôi xem xét một số ví dụ để hiểu nó tốt hơn
Chuỗi Palindrome là gì?
1. số đối xứng
Hãy xem xét hai số. 123321 và 1234561
Số đầu tiên 123321 đọc xuôi đọc ngược đều giống nhau. Do đó nó là một số palindrome
Mặt khác 1234561 khi đọc ngược lại là 1654321 chắc chắn không giống với số ban đầu. Do đó, nó không phải là một số Palindrome
2. Chuỗi Palindrome
Logic đã được giải thích cho Số Palindrome cũng có thể áp dụng cho các chuỗi. Hãy xem xét hai chuỗi cơ bản. aba và abc
Chuỗi aba đọc giống nhau bất kể nó được đọc như thế nào [ngược hay tiến]. Nhưng mặt khác, chuỗi abc khi đọc ngược lại cho kết quả là cba không giống với chuỗi ban đầu
Do đó aba là một Palindrome trong khi abc không phải là
Làm cách nào để xác minh cho Palindrome?
1. số đối xứng
Để kiểm tra xem một số có phải là số Palindrome hay không, trước tiên chúng tôi lấy đầu vào của số đó và tạo một bản sao của số được lấy làm đầu vào
Sau đó, chúng tôi tạo một biến mới để lưu trữ số bị đảo ngược và khởi tạo nó bằng 0
Di chuyển qua số bằng cách sử dụng mod 10 và phép chia cho 10 và trong mỗi vòng lặp, đảm bảo thêm chữ số vào biến số đảo ngược * 10
2. Chuỗi Palindrome
Để kiểm tra một chuỗi, chúng ta lấy một chuỗi làm đầu vào và tính độ dài của nó. Chúng tôi cũng khởi tạo một chuỗi rỗng để lưu trữ đảo ngược của chuỗi
Chúng tôi tạo một vòng lặp giảm dần bắt đầu từ chỉ mục cuối cùng và đi đến chỉ mục đầu tiên và mỗi lần nối chuỗi đảo ngược hiện tại với chữ cái mới thu được
Mã giả để triển khai Palindrome trong Python
1. số đối xứng
READ n CREATE A COPY OF n as c_n CREATE r_v = 0 [ to store reversed number] WHILE n!=0: d=n%10 r_v=r_v*10+d n=n/10 if[c_n == r_v]: print "PALINDROME" else: print "NOT PALINDROME"
2. Chuỗi Palindrome
READ s CALCULATE length of s l_s CREATE r_s = "" [ to store reversed string] FOR i: l_s-1 -> 0 r_s + = s[i] if[r_s == s]: PRINT "PALINDROME" else: PRINT "NOT PALINDROME"
Mã để triển khai Kiểm tra Palindrome bằng Python
Bây giờ bạn đã biết Palindromes là gì và cách xử lý chúng trong trường hợp chuỗi và số, hãy để tôi chỉ cho bạn mã cho cả hai
1. Thực hiện Palindrome. Số
Hãy kiểm tra các số đối xứng bằng Python
n = input[] n = int[n] copy_n=n result = 0 while[n!=0]: digit = n%10 result = result*10 + digit n=int[n/10] print["Result is: ", result] if[result==copy_n]: print["Palindrome!"] else: print["Not a Palindrome!"]
2. Thực hiện Palindrom. Dây
Bây giờ hãy kiểm tra các chuỗi Palindrome trong Python
s = input[] l_s=len[s] r_s="" for i in range[l_s-1,-1,-1]: r_s+=s[i] print["Reuslt is: ",r_s] if[r_s==s]: print["PALINDROME"] else: print["NOT PALINDROME"]
số đối xứng
123321 Result is: 123321 Palindrome!
Chuỗi Palindrome
aibohphobia Reuslt is: aibohphobia PALINDROME
Phần kết luận
Xin chúc mừng. Hôm nay trong hướng dẫn này, bạn đã học về Palindromes và cách triển khai chúng. Hy vọng bạn đã học được điều gì đó. Cảm ơn bạn đã đọc
Trong các ví dụ sau, chúng tôi kiểm tra xem chuỗi hoặc số đã cho có phải là palindrome hay không bằng cách sử dụng các kỹ thuật sau
- Đảo ngược chuỗi đã cho và kiểm tra xem nó có bằng chuỗi ban đầu không
- Sử dụng câu lệnh lặp để so sánh phần tử thứ i từ đầu với phần tử thứ i từ cuối
Kiểm tra xem Chuỗi đã cho có phải là Palindrome không
Trong ví dụ này, chúng tôi đọc một chuỗi từ người dùng và kiểm tra xem chuỗi này có phải là Palindrome hay không. Chúng tôi viết một hàm
READ s CALCULATE length of s l_s CREATE r_s = "" [ to store reversed string] FOR i: l_s-1 -> 0 r_s + = s[i] if[r_s == s]: PRINT "PALINDROME" else: PRINT "NOT PALINDROME"5 lấy một chuỗi làm đầu vào và trả về True nếu chuỗi là Palindrome hoặc Sai nếu không
Chương trình Python
def isPalindrome[x]:
if [x == x[::-1]]:
return True
else:
return False
input1 = input['Enter string : ']
result = isPalindrome[input1]
if[result]:
print[input1, 'is a Palindrome.']
else:
print[input1, 'is not a Palindrome.']
Đầu ra số 1
Enter string : radar
radar is a Palindrome.
Đầu ra #2
________số 8Kiểm tra xem Số đã cho có phải là Palindrome không
Trong ví dụ này, chúng tôi đọc một số từ người dùng và kiểm tra xem số này có phải là Palindrome hay không. Chúng tôi sẽ sử dụng cùng chức năng
READ s CALCULATE length of s l_s CREATE r_s = "" [ to store reversed string] FOR i: l_s-1 -> 0 r_s + = s[i] if[r_s == s]: PRINT "PALINDROME" else: PRINT "NOT PALINDROME"5 mà chúng tôi đã xác định ở trên. Chỉ có bước bổ sung là chuyển đổi số được đọc từ người dùng thành chuỗi
Chương trình Python
def isPalindrome[x]:
x = str[x]
if [x == x[::-1]]:
return True
else:
return False
input1 = input['Enter number : ']
result = isPalindrome[input1]
if[result]:
print[input1, 'is a Palindrome.']
else:
print[input1, 'is not a Palindrome.']
Đầu ra số 1
READ s CALCULATE length of s l_s CREATE r_s = "" [ to store reversed string] FOR i: l_s-1 -> 0 r_s + = s[i] if[r_s == s]: PRINT "PALINDROME" else: PRINT "NOT PALINDROME"0
Đầu ra #2
READ s CALCULATE length of s l_s CREATE r_s = "" [ to store reversed string] FOR i: l_s-1 -> 0 r_s + = s[i] if[r_s == s]: PRINT "PALINDROME" else: PRINT "NOT PALINDROME"1
Kiểm tra xem Chuỗi đã cho có phải là Palindrome hay không bằng cách sử dụng Vòng lặp
Trong ví dụ này, chúng tôi sử dụng Vòng lặp For để lặp lại các ký tự và so sánh ký tự thứ i từ đầu với ký tự thứ i từ cuối. Nếu tất cả các phép so sánh đều bằng nhau, thì chuỗi đã cho là Palindrome
Chương trình Python
READ s CALCULATE length of s l_s CREATE r_s = "" [ to store reversed string] FOR i: l_s-1 -> 0 r_s + = s[i] if[r_s == s]: PRINT "PALINDROME" else: PRINT "NOT PALINDROME"2
Đầu ra số 1
Enter string : radar
radar is a Palindrome.
Đầu ra #2
________số 8Tóm lược
Trong hướng dẫn Ví dụ về Python này, chúng ta đã học cách kiểm tra xem một chuỗi hoặc số đã cho có phải là Palindrome hay không