C++ - Tìm giá trị ASCII của một ký tự bất kỳ được nhập từ bàn phím

Viết chương trình nhập ký tự bất kỳ từ bàn phím, in ra màn hình giá trị ASCII của ký tự đó, cứ lặp lại cho người dùng nhập ký tự và in ra màn hình giá trị ASCII của ký tự vừa nhập, vòng lặp chỉ kết thúc khi người dùng nhấn phím ESC.

Bài giải

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

Cách giải chương trình trên như sau:

  • Nhập một ký tự bất kỳ từ bàn phím, ta gọi biến đó là kyTu
  • Sử dụng vòng lặp do while để lặp lại việc lặp ký tự từ bàn phím và in giá trị ASCII của ký tự vừa nhập ra màn hình, vòng lặp do while sẽ kết thúc khi gặp phím ESC trên bàn phím (ESC mã ASCII là 27)
  • Vì vậy điều kiện cho vòng lặp do whilekyTu != 27

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

#include <iostream>

using namespace std;

int main() {
    
    char kyTu;
    cout << "Chuong trinh lay gia tri ascii cua ky tu nhap tu ban phim." << endl;
    cout << "Nhan phim ESC de thoat chuong trinh" << endl;
    cout << "-----------------------------------------" << endl;
    
    do {
        cout << "Nhap ky tu: "; 
        cin >> kyTu;
        if (int(kyTu) != 27) {
            cout << "    Ma ASCII cua ky tu " << kyTu << " la " << int(kyTu) << endl;
        } else {
            break;
        }
    } while (kyTu != 27);

    return 0;
}

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

Khi nhập các ký tự lần lượt là A, a, T, H, r và phím ESC:

Trong chương trình này chúng ta có sử dụng cấu trúc điều khiển if else và câu lệnh break, nếu 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