Gửi bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Problem type
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Cho số nguyên dương ~n~. Tìm tổng các chữ số của ~n~.
Input
Nhập số nguyên dương ~n~ (~1 \leq n \leq 10^{18}~).
Output
Tổng các chữ số của ~n~.
Sample Test
Input
123
Output
6
Giải thích
1 + 2 + 3 = 6
Gợi ý:
- Cách 1: Đổi kiểu số sang dạng chuỗi, sau đó xét từng ký tự của chuỗi; đổi ký tự đó sang số nguyên (dùng bảng mã ASCII) và cộng vào tổng.
- Cách 2: Tương tự bài trước, tách từng chữ số của số ~n~ bằng cách:
- Dùng phép chia lấy dư cho 10 (~n % 10~) để lấy ra chữ số cuối cùng của số ~n~, cộng vào tổng (~sum += n % 10~).
- Bỏ đi chữ số cuối của số ~n~ bằng phép chia nguyên cho 10 (~n = n/10~).
- Lặp lại cho đến khi ~n = 0~.
Bình luận