Hàm Đảo Ngược Số Trong Python | Laptrinhcanban.com

HOME › >>

Hàm Đảo Ngược Số Trong Python

Khi làm việc với số trong Python, đôi khi bạn có nhu cầu đảo ngược chúng, tức là đảo ngược thứ tự các chữ số để tạo ra một số mới. Điều này có thể hữu ích trong nhiều tình huống, từ việc kiểm tra số đối xứng đến xử lý dữ liệu. Trong bài viết này, chúng ta sẽ tìm hiểu cách tạo hàm đảo ngược số trong Python và cách sử dụng nó để giải quyết các vấn đề thú vị.

Đảo Ngược Số Sử Dụng Chuỗi

Một trong những cách đơn giản để đảo ngược số là sử dụng chuỗi. Bạn có thể chuyển số thành một chuỗi, sau đó sử dụng cắt chuỗi để đảo ngược thứ tự các ký tự. Sau đó, bạn có thể chuyển chuỗi đảo ngược thành một số. Dưới đây là một ví dụ:

def dao_nguoc_so(n):
str_n = str(n)
str_n_reversed = str_n[::-1]
reversed_n = int(str_n_reversed)
return reversed_n

so_ban_dau = 12345
so_dao_nguoc = dao_nguoc_so(so_ban_dau)
print(so_dao_nguoc) # In ra 54321

Trong ví dụ này, chúng ta chuyển số so_ban_dau thành một chuỗi str_n, sau đó sử dụng cắt chuỗi [::-1] để đảo ngược chuỗi. Cuối cùng, chúng ta chuyển chuỗi đảo ngược str_n_reversed thành một số reversed_n.

Sử Dụng Toán Tử

Một cách khác để đảo ngược số là sử dụng toán tử. Bạn có thể sử dụng phép chia và phép chia lấy phần dư để trích xuất từng chữ số từ số ban đầu và xây dựng số đảo ngược. Dưới đây là một ví dụ:

def dao_nguoc_so(n):
reversed_n = 0
while n > 0:
reversed_n = reversed_n * 10 + n % 10
n //= 10
return reversed_n

so_ban_dau = 67890
so_dao_nguoc = dao_nguoc_so(so_ban_dau)
print(so_dao_nguoc) # In ra 9876

Trong ví dụ này, chúng ta sử dụng một vòng lặp while để trích xuất từng chữ số của số ban đầu n và xây dựng số đảo ngược reversed_n.

Kiểm Tra Số Đối Xứng

Một ứng dụng thú vị của hàm đảo ngược số là kiểm tra xem một số có phải là số đối xứng hay không. Số đối xứng là số mà khi đảo ngược nó, ta vẫn nhận được số ban đầu. Dưới đây là một ví dụ về cách kiểm tra số đối xứng:

def kiem_tra_so_doi_xung(n):
return n == dao_nguoc_so(n)

so = 12321
ket_qua = kiem_tra_so_doi_xung(so)
if ket_qua:
print(f"{so} là số đối xứng")
else:
print(f"{so} không là số đối xứng")

Trong ví dụ này, chúng ta sử dụng hàm kiem_tra_so_doi_xung để kiểm tra xem số so có phải là số đối xứng hay không bằng cách so sánh nó với số đảo ngược của chính nó.

Xử Lý Dữ Liệu Số

Hàm đảo ngược số cũng có thể được sử dụng để xử lý dữ liệu số. Ví dụ, bạn có thể sử dụng nó để tính tổng các chữ số trong một số hoặc thực hiện các phép tính tùy ý trên các chữ số của số đó.

Dưới đây là một ví dụ về cách tính tổng các chữ số trong một số:

def tinh_tong_cac_chu_so(n):
tong = 0
while n > 0:
tong += n % 10
n //= 10
return tong

so = 12345
tong = tinh_tong_cac_chu_so(so)
print(f"Tổng các chữ số trong {so}{tong}")

Trong ví dụ này, chúng ta sử dụng hàm tinh_tong_cac_chu_so để tính tổng các chữ số trong số so.

Kết Hợp Với Đảo Ngược Chuỗi

Bên cạnh đảo ngược số, bạn có thể kết hợp nó với đảo ngược chuỗi để thực hiện các tác vụ phức tạp hơn. Ví dụ, bạn có thể kiểm tra xem một chuỗi có phải là chuỗi đối xứng hay không.

Dưới đây là một ví dụ về cách kiểm tra chuỗi đối xứng bằng cách kết hợp đảo ngược số và đảo ngược chuỗi:

def kiem_tra_chuoi_doi_xung(s):
s = s.lower() # Chuyển chuỗi thành chữ thường
s = ''.join(s.split()) # Loại bỏ khoảng trắng và ký tự đặc biệt
return s == s[::-1]

chuoi = "A man, a plan, a canal, Panama"
ket_qua = kiem_tra_chuoi_doi_xung(chuoi)
if ket_qua:
print(f'Chuỗi "{chuoi}" là chuỗi đối xứng')
else:
print(f'Chuỗi "{chuoi}" không là chuỗi đối xứng')

Trong ví dụ này, chúng ta sử dụng hàm kiem_tra_chuoi_doi_xung để kiểm tra xem chuỗi chuoi có phải là chuỗi đối xứng hay không sau khi loại bỏ khoảng trắng và ký tự đặc biệt.

Kết Luận

Trên đây Kiyoshi đã hướng dẫn bạn về cách hàm đảo ngược số trong python rồi. Hàm đảo ngược số trong Python là một công cụ mạnh mẽ cho việc xử lý dữ liệu số và giải quyết các vấn đề liên quan đến số. Bằng cách sử dụng các kỹ thuật như đảo ngược chuỗi hoặc toán tử, bạn có thể thực hiện nhiều tác vụ khác nhau, từ kiểm tra số đối xứng đến tính tổng các chữ số trong một số. Hàm đảo ngược số là một công cụ hữu ích mà mọi lập trình viên Python nên biết và sử dụng để giải quyết các vấn đề liên quan đến số một cách dễ dàng và linh hoạt.

URL Link

https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/so-trong-python/ham-dao-nguoc-so-trong-python/

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

HOME  › >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.