Number Palindrome Checker
Periksa apakah angka adalah palindrom, cari palindrom dalam kisaran, dan temukan angka palindrom yang menarik.
Tentang alat ini
Palindrom angka adalah angka yang dibaca sama dari depan dan belakang, seperti 121 atau 3443. Pemeriksa Palindrom Angka memungkinkan Anda memverifikasi secara instan apakah angka apa pun adalah palindrom, menjelajahi rentang palindrom untuk melihat pola, dan menemukan sifat-sifat matematis yang menarik dari angka-angka simetris ini.
Menggunakan alat ini sangat mudah: masukkan satu angka untuk memeriksa apakah itu palindrom, atau tentukan rentang untuk menemukan semua palindrom di dalamnya. Anda dapat memeriksa bagaimana palindrom didistribusikan di berbagai rentang angka, mulai dari bilangan bulat kecil hingga nilai yang lebih besar, dan mendapatkan wawasan tentang frekuensi dan karakteristik matematis mereka.
Alat ini bermanfaat bagi siswa yang mempelajari teori bilangan, matematikawan yang mengeksplorasi pola numerik, dan siapa pun yang penasaran tentang sifat-sifat angka yang unik. Meskipun pemeriksa bekerja dengan bilangan bulat positif apa pun, angka yang sangat besar mungkin memerlukan waktu sedikit lebih lama untuk diproses, tetapi prinsip dasar tetap sama: palindrom sejati terpantul sempurna di sekitar angka-angka pusat mereka.
Pertanyaan yang Sering Diajukan
Implementasi Kode
def is_palindrome(n) -> bool:
"""Check if a number (int or string) is a palindrome."""
s = str(n)
return s == s[::-1]
def next_palindrome(n: int) -> int:
"""Find the next palindrome after n."""
n += 1
while not is_palindrome(n):
n += 1
return n
def find_palindromes_in_range(start: int, end: int) -> list[int]:
"""Find all palindrome numbers in range [start, end]."""
return [i for i in range(start, end + 1) if is_palindrome(i)]
# Check specific numbers
for num in [12321, 12345, 99999, 100001, 1234321]:
result = "✓ palindrome" if is_palindrome(num) else "✗ not palindrome"
print(f"{num}: {result}")
# Find palindromes in range
print("\nPalindromes 100-200:", find_palindromes_in_range(100, 200))
print("Next palindrome after 999:", next_palindrome(999))
print("Next palindrome after 12345:", next_palindrome(12345))
# Lychrel number check (reverse and add)
def reverse_and_add(n: int, steps: int = 50) -> tuple[bool, int]:
for _ in range(steps):
n += int(str(n)[::-1])
if is_palindrome(n):
return True, n
return False, n
print("\n196 Lychrel test:", reverse_and_add(196, 100)[0]) # Famous non-palindromeComments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.