C++ - Nhập một số in ra màn hình bằng chữ

Viết một chường trình nhập một số từ bàn phím và in ra màn hình bằng chữ. Ví dụ 1234, kết quả in ra màn hình là một hai ba bốn.

Bài giải

-------------------- ######## --------------------

Cách giải bài toán trên như sau:

  • Nhập số n từ bàn phím
  • Tách từng số riêng lẻ của số n. Thuật toán tách số riêng lẻ của một số mình đã đề cập ở bài tập đảo ngược số nguyên, nếu các bạn chưa hiểu thì có thể xem lại nhé
  • Dùng lệnh switch case kiểm tra từng số riêng lẻ trên, nếu 0 in ra là không, 1 in ra là một... đến 9 in ra là chín.

Chúng ta sẽ giải bài toán trên bằng vòng lặp while trong C++ như sau:

#include <iostream>

using namespace std;

int main() {
    int so, soTemp;
    cout << "Nhap so n: ";
    cin >> so;
    
    cout << so << " doc thanh chu la ";
    
    // luu so dao nguoc cua so vao soTemp
    while(so != 0) {
        soTemp = (soTemp * 10) + (so % 10);
        so /= 10;
    }
    
    while(soTemp != 0) {
        switch(soTemp % 10) {
            case 0: 
                cout << "Khong ";
                break;
            case 1: 
                cout << "Mot ";
                break;
            case 2: 
                cout << "Hai ";
                break;
            case 3: 
                cout << "Ba ";
                break;
            case 4: 
                cout << "Bon ";
                break;
            case 5: 
                cout << "Nam ";
                break;
            case 6: 
                cout << "Sau ";
                break;
            case 7: 
                cout << "Bay ";
                break;
            case 8: 
                cout << "Tam ";
                break;
            case 9: 
                cout << "Chin ";
                break;
        }
        
        soTemp = soTemp / 10;
    }

    return 0;
}

Và kết quả sau khi thực thi chương trình trên như sau:

Khi nhập số n là 1234567:

ex while 1 JPG

Khi nhập số n là 89754:

ex while 2 JPG

Khi nhập số n là 11775599:

ex while 3 JPG

Khi nhập số n là 2468:

ex while 4 JPG

Khi nhập số n là 13579:

ex while 5 JPG

Trong chương trình này chúng ta có sử dụng cấu trúc điều khiển switch case và câu lệnh break, nếu các bạn nào chưa nắm rõ thì có thể xem lại ở các bài trước nhé.

Nguồn: freetuts.net

Tham khảo
C++ - Tính tổng các chữ số của một số nguyên được nhập từ bàn phím
C++ - Nhập một số in ra màn hình bằng chữ
C++ -Tìm bội chung nhỏ nhất của hai số nguyên được nhập từ bàn phím
C++ - Kiểm tra một số được nhập từ bàn phím có phải là số nguyên tố không
C++ - In tất cả các số nguyên tố từ 1 đến số n được nhập từ bàn phím