Viết chương trình cho biết số nguyên n có bao nhiêu số chẵn

3

Bạn đang thắc mắc? Ghi câu hỏi của bạn và đăng ở chế độ cộng đồng (?)

Bài viết hôm nay mình sẽ hướng dẫn các bạn cách đếm số lượng chữ số lẻ của số nguyên dương n.

  • Input

  •  
  • Output
  • So luong cac chu so le la: 3


     

Ý tưởng đếm số lượng các chữ số lẻ của số nguyên dương

Để đếm số lượng các chữ số lẻ của số nguyên dương thì ta lần lượt làm như sau:

  • Khởi tạo một biến count với giá trị bằng 0 để đếm các chữ số lẻ.
  • Ta lần lượt lấy từng chữ số của số nguyên dương n ra để xét. Nếu chữ số đó là số lẻ thì ta tăng giá trị biến count lên một đơn vị, ngược lại thì không làm gì cả.
  • Sau khi lấy hết các chữ số của số nguyên dương n ra để xét thì ta tiến hành trả về giá trị của biến count. Tức là trả về số lượng các chữ số lẻ của số nguyên dương.

Lưu ý: Bạn phải dùng vòng lặp do while để kiểm soát giá trị nhập vào n. Nếu người dùng nhập vào giá trị bé hơn 0 thì phải tiến hành nhập lại.

Xây dựng chương trình đếm số lượng các chữ số lẻ

Các bạn cùng xem chương trình sau:

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

#include

#include

using namespace std;

int main() {

    int n;

    int count = 0;

    /*Nhập vào giá trị n lớn hơn bằng 0*/

    do {

        cout << "Nhap n( n >= 0 ): ";

        cin >> n;

    } while (n < 0);

    /*Đếm số lượng chữ số lẻ*/

    while (n != 0) {

        int temp = n % 10;

        if (temp % 2 == 1)

            count++;

        n /= 10;

    }

    cout << "So luong cac chu so le la: " << count<<endl;

}

Sau khi chạy chương trình trên ta có kết quả sau:

Nhap n( n >= 0 ): 12356

So luong cac chu so le la: 3

Tuy nhiên mình khuyên các bạn nên viết hẳn một hàm để đếm số lượng các số lẻ.

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

#include

#include

using namespace std;

int dem(int n) {

    int count = 0;

    while (n != 0) {

        int temp = n % 10;

        if (temp % 2 == 1)

            count++;

        n /= 10;

    }

    return count;

}

int main() {

    int n;

    int count = 0;

    /*Nhập vào giá trị n lớn hơn bằng 0*/

    do {

        cout << "Nhap n( n >= 0 ): ";

        cin >> n;

    } while (n < 0);

    cout << "So luong cac chu so le la: " << dem(n)<<endl;

}

Tương tự các bạn cũng có thể tự viết chương trình để đếm số lượng các chữ số chẵn có trong số nguyên dương.

Bài viết mình đến đây là kết thúc. Cám ơn các bạn đã theo dõi !