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

Chương trình C++ sinh CAPTCHA và xác thực người dùng

Sinh CAPTCHA ngẫu nhiên gồm chữ cái (a-z, A-Z) và số (0-9). Yêu cầu người dùng nhập lại, so sánh khớp hay không.

Ví dụ

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

bool check_string(string &captcha, string &user_captcha) {
    return captcha.compare(user_captcha) == 0;
}

string gen_captcha(int n) {
    time_t t;
    srand((unsigned)time(&t));
    char *chrs = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    string captcha = "";
    while (n--)
        captcha.push_back(chrs[rand() % 62]);
    return captcha;
}

int main() {
    string captcha = gen_captcha(9);
    cout << captcha;
    string usr_captcha;
    cout << "\nEnter CAPTCHA : ";
    usr_captcha = "fgyeugs56"; // mô phỏng nhập
    if (check_string(captcha, usr_captcha))
        printf("\nCAPTCHA Matched");
    else
        printf("\nCAPTCHA Not Matched");
    return 0;
}

Kết quả

nwsraJhiP
Enter CAPTCHA : CAPTCHA Not Matched