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:
Bài viết này được đăng tại [free tuts .net]
Khi nhập số n là 89754:
Khi nhập số n là 11775599:
Khi nhập số n là 2468:
Khi nhập số n là 13579:
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é.
Bài tập vòng lặp while C++
- 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