Soy nuevo en esto de la programación, e intentando un problema típico de adiviniar numeros me he atascado.
He probado de todo lo que se me ha ocurrido pero nada, debe ser un fallo muy tonto pero no lo encuentro.
Muchas gracias de antemano y espero que podais ayudarme.
Enunciado del problema:
Escribir un programa para que el ordenador adivine un número entre 1 y 100 que hayáis pensado, al final presentará las estadísticas del número de veces que ha tardado en adivinar el número.
Mi código:
Código
#include<stdlib.h> #include<time.h> #include<iostream> #include<string> /**variable = limite_inferior + rand() % (limite_superior +1 - limite_inferior) ;**/ /*Función genérica para que te saque numeros aleatorios dentro de un rango*/ using namespace std; int main(){ int num,fallos=0; char respuesta[2]; srand(time(NULL)); /*esto es como avisar al ordenador de que vas a utilizar la funcion de números aleatorios*/ do{ num=1+rand()%(101-1); /*funcion para que te saque numeros entre 1 y 100*/ cout<<"El numero que has pensado es este?-->"<<num<<endl; cin.getline(respuesta, 2,'\n'); fallos++; }while(respuesta[2]=='no'); if(respuesta[2]=='si'){ cout<<"Gane!"<<endl; cout<<"He fallado "<<fallos<<" veces."<<endl; } return 0; }
El problema esta en que cuando le das una respuesta le das a enter y no hace absolutamente nada.