Blog TOÁN-TIN của Thầy CHÂU HỮU SƠN

Tui là Giáo viên Chuyên Toán Trung học. Hãy xem thêm:
Vườn Toán học
Cảm ơn các bạn đã ghé thăm blog!

Friday, December 11, 2015

On 6:35 AM by MATH CHANNEL in    2 comments
Chương trình tính tổng các chữ số của một số tự nhiên bất kì

import java.util.Scanner;

public class Main {

       public static int nhapSoTN() {
              Scanner input = new Scanner(System.in);
              boolean check = false;
              int n = 0;
              while (!check) {
                     try {
                           n = Integer.parseInt(input.nextLine());
                           if (n < 0) {
                                  System.out.println("Bạn phải nhập số tự nhiên! Hãy nhập lại.");
                                  continue;
                           }
                           check = true;
                     } catch (Exception e) {
                           System.out.println("Bạn phải nhập số tự nhiên! Hãy nhập lại.");
                     }
              }
              return (n);
       }

       public static int tongChuSo(int n) {
              int sum = 0;
              int du;
              while (n != 0) {
                     du = n % 10;
                     sum += du;
                     n /= 10;
              }
              return sum;
       }

       public static int tongChuSo(int n) {
              String str = Integer.toString(n);
              int sum = 0;
              for (int i = 0; i < str.length(); i++) {
                     sum += (int) str.charAt(i) - 48; // 48 la mã Ascii của 0
              }
              return sum;
       }

       public static void main(String[] args) {
              System.out.println("Nhập số tự nhiên n: ");
              int n = nhapSoTN();
              System.out.println("Tổng các chữ số bằng: " + tongChuSo(n));
       }

}

2 comments:

  1. Cám ơn thầy đã đăng đoạn chương trình. nếu có những đoạn comment trong code sẽ tốt hơn rất nhiều

    ReplyDelete
  2. Nội dung này rất hữu ích, cảm ơn tác giả

    ReplyDelete