Viết chương trình python tính tổng các phần tử số trong mảng cho trước gồm cả ký tự và số

  • Login
  • Register

with your social network

OR

Resend activation email

Not a member? Register

I can't rememeber my password

This site is protected by reCAPTCHA and Terms of Use apply.

I agree to the Terms and Conditions of CodeLearn

Already registered? Login



Đề bài

Bài tập Python: Viết chương trình tính tổng của các chữ số của môt số nguyên n trong Python. Số nguyên dương n được nhập từ bàn phím. Ví dụ:

Viết chương trình python tính tổng các phần tử số trong mảng cho trước gồm cả ký tự và số



Lời giải

Với bài toán này chúng tôi sử dụng phép chia lấy phần dư và chia lấy phần nguyên để giải quyết.

Ví dụ tổng các chữ số của 1234 sẽ là: (1234 % 10) + (123 % 10) + (12 % 10) + (1 % 10) = 4 + 3 + 2 + 1 = 10.

""""
 * Tính tổng của các chữ số của một số nguyên dương n
 *
 * @param n: số nguyên dương
 * @return
"""
def totalDigitsOfNumber(n):
    total = 0;
    while (n > 0):
        total = total + n % 10;
        n = int(n / 10);
    return total;

n = int(input("Nhập số nguyên dương n = "));
print("Tổng các chữ số của", n , "là", totalDigitsOfNumber(n));

Kết quả:

Nhập số nguyên dương n = 1234
Tổng các chữ số của 1234 là 10



Bài toán cần xử lý

Viết hàmtính tổng các số với số lượng bất kỳ (Tham số là *agrs).


Kiến thức cần có

  • Hàm print()
  • Cấu trúc lặp trong Python
  • Biến và kiểu dữ liệu
  • Hàm trong Python

Định dạng đầu vào

  • Bài tập không có đầu vào

Định dạng đầu ra

  • Gồm một kết quả duy nhất hiển thị như sau:

1 + 2 + 3 = 6

1 + 2 + 3 + 4 + 5 = 15


Gợi ý

  • Viết hàm tinh_tong với tham số là *args với đối số không giới hạn số lượng
  • Sử dụng vòng lặp for để tính tổng các số từ tham số truyền vào
  • Hiển thị demo hai phép tính ra màn hình theo yêu cầu định dạng đầu ra

Code mẫu

def tinh_tong(*args):
   tong = 0
   for so in args:
       tong += so
   return tong

print("1 + 2 + 3 = {}".format(tinh_tong(1, 2, 3)))
print("1 + 2 + 3 + 4 + 5 = {}".format(tinh_tong(1, 2, 3, 4, 5)))

Kết luận

Trong bài này, Kteam đã hướng dẫn bạn cách viết hàm tính tổng các số với số lượng bất kỳ (Tham số là *agrs). Thêm bài giải của bạn vào phần bình luận để được Kteam review code và fix lỗi (nếu có) trong livestream của khóa học này.

Ở bài tiếp theo, chúng ta sẽ cũng nhau học cách VIẾT HÀM ĐỆ QUY TRẢ VỀ TỔNG CÁC SỐ TỪ 1 ĐẾN N. (THAM SỐ LÀ SỐ TỰ NHIÊN N).

Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của bạn để phát triển bài viết tốt hơn. Đừng quên " Luyện tập - Thử Thách - Không ngại khó!"


Tải xuống

Project

Nếu việc thực hành theo hướng dẫn không diễn ra suôn sẻ như mong muốn. Bạn cũng có thể tải xuống PROJECT THAM KHẢO ở link bên dưới!

Viết chương trình python tính tổng các phần tử số trong mảng cho trước gồm cả ký tự và số


Thảo luận

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.

Đề bài: Viết chương trình sử dụng ngôn ngữ lập trình Python nhập vào một mảng các số nguyên. Thực hiện đếm và tính tổng các số chẵn, lẻ rồi hiển thị kết quả ra màn hình.
Yêu cầu kiến thức:

  • Nắm được cách tổ chức chương trình, phân chia thành các hàm
  • Nắm được cách phân tích và thiết kế chương trình, cách sử dụng vòng lặp trong Python
  • Vận dụng các duyệt list và cách sử dụng list trong Python

Code tham khảo dưới viết trên Python ver 3.8:


# Ho ten: Hoang Van Tuan
# Website: timoday.edu.vn

n = int(input("Nhap vao so luong phan tu: "))

print("Nhap vao phan tu cho mang:")
a = []
for i in range(0, n):
    print("\tPhan tu thu", (i+1), "la:", end=" ")
    a.append(int(input()))

print("Mang vua nhap la:")
for i in range(len(a)):
    print(a[i], end="\t")

chan, le, s_chan, s_le = 0, 0, 0, 0
for i in a:
    if (i%2) == 0:
        chan += 1
        s_chan += i
    else:
        le += 1
        s_le += i

print("\nSo luong phan tu chan la:", chan)
print("So luong phan tu le la:", le)
print("Tong cac phan tu chan la:", s_chan)
print("Tong cac phan tu le la:", s_le)


Kết luận:

  • Bạn có thể tham khảo thêm khóa học lập trình C từ cơ bản đến nâng cao. Xem tại đây
  • Bạn có thể tham khảo thêm khóa học Thành thạo lập trình C#. Xem tại đây