Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Chuyển câu thành dãy phím bàn phím di động trong C++


Chuyển chuỗi chữ cái thành dãy số trên bàn phím di động cũ (T9). Mỗi phím 2-9 tương ứng 3-4 chữ cái.

Bảng mã phím

2: ABC  (2, 22, 222)
3: DEF  (3, 33, 333)
4: GHI  (4, 44, 444)
5: JKL  (5, 55, 555)
6: MNO  (6, 66, 666)
7: PQRS (7, 77, 777, 7777)
8: TUV  (8, 88, 888)
9: WXYZ (9, 99, 999, 9999)
Space: 0

Chương trình C++

#include <bits/stdc++.h> 
using namespace std; 

string calc_sequence(string arr[], string input) {
    string output = "";
    int n = input.length();
    for (int i = 0; i < n; i++) {
        if (input[i] == ' ')
            output += "0";
        else {
            int position = input[i] - 'A';
            output += arr[position];
        }
    }
    return output;
}

int main() {
    string str[] = {
        "2","22","222",      // A,B,C
        "3","33","333",      // D,E,F
        "4","44","444",      // G,H,I
        "5","55","555",      // J,K,L
        "6","66","666",      // M,N,O
        "7","77","777","7777", // P,Q,R,S
        "8","88","888",      // T,U,V
        "9","99","999","9999"  // W,X,Y,Z
    };
    string input = "TUTORIALSPOINT";
    cout << calc_sequence(str, input);
    return 0;
}

Kết quả

8888666777444255577777666444668

Giải mã

T=8, U=888, T=8, O=666, R=777, I=444, A=2, L=555, S=7777, P=7, O=666, I=444, N=66, T=8