Làm thế nào để bạn tính tổng các số có hai chữ số trong python?

Trong chương trình này, chúng tôi yêu cầu người dùng nhập hai số và chương trình này hiển thị tổng của hai số do người dùng nhập

Chúng tôi sử dụng chức năng tích hợp sẵn input[] để lấy đầu vào. Vì, input[] trả về một chuỗi, chúng tôi chuyển đổi chuỗi thành số bằng cách sử dụng hàm float[]. Sau đó, các số được thêm vào

Ngoài ra, chúng ta có thể thực hiện phép cộng này trong một câu lệnh mà không cần sử dụng bất kỳ biến nào như sau

Cuối cùng, phương thức to_bytes của số nguyên sẽ hiển thị biểu diễn byte của một số nguyên trong cơ sở thập lục phân

Cơ sở thập lục phân đại diện cho 16 giá trị hoặc 4 bit do đó 2 giá trị thập lục phân bằng 1 byte hoặc 8 bit. Hex được sử dụng trong khoa học máy tính vì nó thuận tiện hơn nhiều so với hệ thống 10 số cơ sở khi xử lý các bit. 1byte có thể được biểu diễn bằng 2 giá trị thập lục phân. Cũng thuận tiện, mỗi địa chỉ bộ nhớ là 4 bit, tương đương với 1 nibble

Cho một số nguyên. Làm cách nào để tổng tất cả các chữ số của số này để tính crossfoot [tổng chéo]?

Xem xét các ví dụ sau

  • 12 – > 1+2 = 3
  • 123 – > 1+2+3 = 3
  • 244 – > 2+4+4 = 10
  • 981223 – > 9+8+1+2+2+3 = 25

Phương pháp 1. tổng [] với Biểu thức trình tạo

Hàm sum[iterable tích hợp trong Python tính tổng tất cả các phần tử trong iterable. Đây có thể là một danh sách, một bộ, một tập hợp hoặc bất kỳ cấu trúc dữ liệu nào khác cho phép bạn lặp lại các phần tử

Để tính tổng tất cả các chữ số của một số nguyên nhất định, hãy chuyển biểu thức trình tạo ____25________ vào hàm ____ _ ____ tích hợp. Biểu thức trình tạo chuyển đổi số thành chuỗi bằng cách sử dụng hàm str[number] tích hợp, lặp qua từng ký tự chữ số và chuyển đổi từng ký tự thành số nguyên. Hàm sum[] tính tổng tất cả các ký tự đó

number = 123
res = sum[int[digit] for digit in str[number]]

print[res]
# 6

Bạn có thể tìm hiểu thêm về hàm sum[] trong video này

Danh sách sum[] trong Python - Hướng dẫn minh họa đơn giản

str[number]
  • Truyền kết quả vào hàm
    number = 123
    res = sum[map[int, str[number]]]
    
    print[res]
    # 6
    3 làm đối số thứ hai của iterable. Truyền hàm
    number = 123
    res = sum[map[int, str[number]]]
    
    print[res]
    # 6
    5 tích hợp làm đối số
    number = 123
    res = sum[map[int, str[number]]]
    
    print[res]
    # 6
    6 đầu tiên. Điều này chuyển đổi từng chữ số ký tự thành một số nguyên
  • Chuyển kết quả lặp lại của các chữ số nguyên vào hàm sum[] để tính tổng của tất cả các chữ số
  • number = 123
    res = sum[map[int, str[number]]]
    
    print[res]
    # 6

    Vui lòng xem video sau để đi sâu vào hàm

    number = 123
    res = sum[map[int, str[number]]]
    
    print[res]
    # 6
    1

    Làm chủ chức năng bản đồ Python [+Video]


    Xem video này trên YouTube

    Phương pháp 3. Giải pháp chỉ dành cho số nguyên nhanh

    Hai giải pháp trước chuyển đổi số nguyên thành một chuỗi và các chữ số trở lại số nguyên. Điều này tương đối tốn kém và không thực sự cần thiết. Một giải pháp "dựa trên số nguyên" thuần túy đạt được hiệu suất tốt hơn nhiều

    number = 123
    res = 0
    while number:
        res += number % 10
        number //= 10
    print[res]

    Mã thực hiện các bước sau để tính tổng của tất cả các chữ số

    • Bắt đầu với kết quả 0
    • Nói lại
    • … Sử dụng phép cộng tại chỗ để cộng vào tổng hiện tại của tất cả các chữ số, giá trị nguyên của vị trí cuối cùng của số có nhiều chữ số của kết quả modulo của
      number = 123
      res = sum[map[int, str[number]]]
      
      print[res]
      # 6
      9. Ví dụ, kết quả của
      number = 123
      res = 0
      while number:
          res += number % 10
          number //= 10
      print[res]
      0 là
      number = 123
      res = 0
      while number:
          res += number % 10
          number //= 10
      print[res]
      1, i. e. , chỉ giá trị của chữ số cuối cùng
    • … Xóa vị trí cuối cùng của số có nhiều chữ số bằng cách chia nó cho 10 bằng phép chia số nguyên. Ví dụ, kết quả của
      number = 123
      res = 0
      while number:
          res += number % 10
          number //= 10
      print[res]
      2 là
      number = 123
      res = 0
      while number:
          res += number % 10
          number //= 10
      print[res]
      3, i. e. , chữ số cuối cùng đã bị xóa
    • Kết thúc vòng lặp ngay khi số nhận giá trị 0

    Đây là giải pháp nhanh nhất cho đến nay vì nó không cần chuyển đổi từ số nguyên sang chuỗi và ngược lại

    Trong trường hợp bạn cần một số thông tin cơ bản, hãy xem video sau về bổ sung tại chỗ

    [Tổng quan] Toán tử gán tại chỗ của Python. toán tử hợp chất


    Xem video này trên YouTube

    Phương pháp 4. Giải pháp đệ quy

    Giải pháp đệ quy sử dụng thực tế là để tính tổng của

    number = 123
    res = 0
    while number:
        res += number % 10
        number //= 10
    print[res]
    4 chữ số [e. g. ,
    number = 123
    res = 0
    while number:
        res += number % 10
        number //= 10
    print[res]
    5 chữ số cho số
    number = 123
    res = 0
    while number:
        res += number % 10
        number //= 10
    print[res]
    6] bạn có thể tính tổng của
    number = 123
    res = 0
    while number:
        res += number % 10
        number //= 10
    print[res]
    7 chữ số đầu tiên
    number = 123
    res = 0
    while number:
        res += number % 10
        number //= 10
    print[res]
    8 và thêm chữ số cuối cùng vào đó, tôi. e. ,
    number = 123
    res = 0
    while number:
        res += number % 10
        number //= 10
    print[res]
    9

    Đây là cách bạn triển khai điều này trong Python

    def sum_digits[n]:
        return n%10 + sum_digits[n//10] if n>9 else n
    
    
    print[sum_digits[1234567890000000000]]
    # 45
    print[sum_digits[10000000]]
    # 1
    

    Để tìm hiểu về toán tử bậc ba được sử dụng trong câu lệnh return, hãy xem video sau

    Toán tử Ternary Python – Và một vụ hack một lớp đáng ngạc nhiên


    Xem video này trên YouTube

    Đi đâu từ đây?

    Đủ lý thuyết. Hãy thực hành một số

    Các lập trình viên được trả sáu con số trở lên vì họ có thể giải quyết vấn đề hiệu quả hơn bằng cách sử dụng trí thông minh máy móc và tự động hóa

    Để trở nên thành công hơn trong việc viết mã, hãy giải quyết nhiều vấn đề thực tế hơn cho người thực. Đó là cách bạn trau dồi những kỹ năng bạn thực sự cần trong thực tế. Rốt cuộc, việc sử dụng lý thuyết học tập mà không ai cần là gì?

    Bạn xây dựng các kỹ năng mã hóa có giá trị cao bằng cách làm việc trên các dự án mã hóa thực tế

    Bạn có muốn ngừng học với các dự án đồ chơi và tập trung vào các dự án mã thực tế giúp bạn kiếm tiền và giải quyết các vấn đề thực sự cho mọi người không?

    🚀 Nếu câu trả lời của bạn là CÓ. , cân nhắc trở thành nhà phát triển Python tự do. Đó là cách tốt nhất để tiếp cận nhiệm vụ cải thiện kỹ năng Python của bạn—ngay cả khi bạn là người mới hoàn toàn

    Nếu bạn chỉ muốn tìm hiểu về cơ hội làm việc tự do, vui lòng xem hội thảo trên web miễn phí của tôi “Cách xây dựng kỹ năng Python có thu nhập cao của bạn” và tìm hiểu cách tôi phát triển công việc viết mã của mình trực tuyến cũng như cách bạn có thể làm được—từ sự thoải mái của bạn

    Tham gia hội thảo trên web miễn phí ngay bây giờ

    Chris

    Trong khi làm việc với tư cách là một nhà nghiên cứu trong các hệ thống phân tán, Dr. Christian Mayer tìm thấy tình yêu của mình với việc dạy sinh viên khoa học máy tính

    Để giúp sinh viên đạt được mức độ thành công Python cao hơn, anh ấy đã thành lập trang web giáo dục lập trình Finxter. com. Ông là tác giả của cuốn sách lập trình nổi tiếng Python One-Liners [NoStarch 2020], đồng tác giả của loạt sách tự xuất bản Coffee Break Python, người đam mê khoa học máy tính, cộng tác viên tự do và chủ sở hữu của một trong 10 blog Python lớn nhất thế giới

    Niềm đam mê của anh ấy là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh ấy là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ nâng cao kỹ năng của mình. Bạn có thể tham gia học viện email miễn phí của anh ấy tại đây

    Tổng các chữ số của số 2 1000 trong Python là bao nhiêu?

    Câu hỏi này đã có câu trả lời tại đây. Nó đưa ra kết quả 1189 .

    sum[] sum[] trong Python là gì?

    Hàm Python sum[] . returns a number, the sum of all items in an iterable.

    Chủ Đề