Dev - C++ - Como verificar si el numero aleatorio es el mismo al que ingresó el usuario

 
Vista:
sin imagen de perfil

Como verificar si el numero aleatorio es el mismo al que ingresó el usuario

Publicado por Máximo Leonel (1 intervención) el 27/10/2021 04:09:30
Estoy haciendo un juego en C++ (con vectores dinámicos) para la gente con alzheimer, en la que se generan 2 números aleatorios del 0 al 9 que desaparecen después de unos segundos, si la persona ingresa los mismos dos numeros que se le mostraron, se van a generar 3 números aleatorios nuevamente y asi sucesivamente hasta que llegue a 10.

(ejemplo del juego: http://labpsi.mdp.edu.ar/WebFormTest/DigitosDirectosInversosTest.aspx?ID=1&tt=1) Lo empecé ayer, y me quede trabado en la parte para confirmar si el numero que ingreso el usuario es igual al aleatorio. Imagino que el error esta entre el bool y el main, si pueden aclárenme esa duda, gracias (en el código solo puse la parte del problema).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
vector <int> generarVector(vector <int> random, int n);
void pedirNumeros(vector <int> nums, int n);
bool noRepetir(vector <int> VecNums, vector <int> random, int n);
 
int main() {
    setlocale (LC_ALL, "Spanish");
    vector <int> lista, random, numeros;
    int secs, n = 2;
 
    lista = generarNumeros(lista);
    random = generarVector(random, n);
    pedirNumeros(numeros, n);
    if(noRepetir(numeros, random, n) == true) {
        pedirNumeros(numeros, n);
        generarVector(random, n);
        cout<<"Bien!\n";
        n++;
        } else {
        cout<<"Mal.\n";
    }
 
    return 0;
}
 
vector <int> generarVector(vector <int> random, int n) {
    int i, j, c;
    srand(time(NULL));
    for (i = 0; i < n; i++) {
        c = rand() % 10;
        random.push_back(c);
    } for(j = 0; j < n; j++) {
        if(random[j] == random[j+1]) {
            random.pop_back();
            c = rand() % 10;
            random.push_back(c);
        }
    }
    return random;
}
 
bool noRepetir(vector <int> VecNums, vector <int> random, int n) {
    bool flag = false;
    int i;
    for(i = 0; i < n; i++) {
        if(VecNums[i] == random[i]) {
            flag = true;
        }
    }
    return flag;
}
 
void pedirNumeros(vector <int> nums, int n) {
    int i, num;
    for(i = 0; i < n; i++) {
        cout<<"Número: ";
        cin>>num;
        nums.push_back(num);
    }
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder