Viết chương trình biến nhiều số nguyên thành một số nguyên duy nhất bằng Python

Đề bài: Cho danh sách nhiều số nguyên, viết một chương trình Python để biến danh sách đã cho thành một số nguyên duy nhất.

Ví dụ:

Input : [1, 2, 3]
Output : 123

Input : [55, 32, 890]
Output : 5532890

Trong bài viết này, Quản Trị Mạng sẽ cùng các bạn tìm hiểu cách viết chương trình biến nhiều số nguyên thành một số nguyên duy nhất bằng ngôn ngữ lập trình Python.

Có khá nhiều cách tiếp cận khả dụng cho việc biến nhiều số nguyên thành một số nguyên duy nhất. Dưới đây, chúng ta sẽ khám phá từng cách một.

Cách 1: Phương pháp cơ bản nhất

Bạn chỉ cần lặp lại từng phần tử trong danh sách và trả về chúng mà không có khoảng trắng ở giữa.

Dưới đây là code mẫu để các bạn tham khảo:

# Python3 program to convert a list
# of integers into a single integer
 
# creating a list
lst = [12, 15, 17]
 
# iterating each element
for i in lst:
    print(i, end="")

Kết quả trả về là:

121517

Cách 2: Sử dụng join()

Cách tiếp cận thứ 2 là sử dụng phương thức join() của Python. Đầu tiên, bạn cần chuyển đổi danh sách số nguyên sang chuỗi (lý do là vì join() chỉ hoạt động với chuỗi. Tiếp theo, đơn giản bạn chỉ cần dùng phương thức join() để kết hợp chúng lại với nhau rồi trả về kết quả.

Dưới đây là code mẫu để các bạn tham khảo:

# Python3 program to convert a list
# of integers into a single integer
def convert(list):
     
    # Converting integer list to string list
    s = [str(i) for i in list]
     
    # Join list items using join()
    res = int("".join(s))
     
    return(res)
 
# Driver code
list = [1, 2, 3]
print(convert(list))

Kết quả trả về là:

123

Cách 3: Sử dụng map()

Cách tiếp cận tiếp theo để chuyển một danh sahcs nhiều số nguyên thành một số nguyên duy nhất là dùng hàm map() của Python với hàm str để chuyển danh sách số nguyên thành danh sách chuỗi. Sau đó, kết hợp chúng với nhau trên một chuỗi trống và cuối cùng là trả về số nguyên đã được kết hợp.

Dưới đây là code mẫu:

# Python3 program to convert a list
# of integers into a single integer
def convert(list):
     
    # Converting integer list to string list
    # and joining the list using join()
    res = int("".join(map(str, list)))
     
    return res
 
# Driver code
list = [1, 2, 3]
print(convert(list))

Kết quả trả về là:

123

Cách 4: Nhân từng số nguyên với lũy thừa 10

Đây là một cách tiếp cận mang nhiều tính chất toán học hơn và nó không yêu cầu bạn phải chuyển đổi danh sách số nguyên sang danh sách chuỗi. Bạn cần nhân từng phần tử số nguyên với lũy thừa tương ứng là 10 rồi tính tổng.

Dưới đây là code mẫu để các bạn tham khảo:

# Python3 program to convert a list
# of integers into a single integer
def convert(list):
     
    # multiply each integer element with its
    # corresponding power and perform summation
 
    res = sum(d * 10**i for i, d in enumerate(list[::-1]))
     
    return(res)
 
# Driver code
list = [1, 2, 3]
print(convert(list))

Kết quả trả về là:

123

Quản Trị Mạng hy vọng rằng bài viết này sẽ có ích đối với bạn.

Thứ Ba, 29/11/2022 09:34
33 👨 368
0 Bình luận
Sắp xếp theo
    ❖ Học Python