jueves, 24 de septiembre de 2015

C++ - Adivina número aleatorio

Adivina número generado de manera aleatorio en C++

En el siguiente ejemplo vamos a ver cómo generar un número aleatorio y ayudar al usuario a adivinar cual es con el programa Zinjal.

CÓDIGO

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int aleatorioEntero(int a, int b);
void mostrarMensaje(int n);
void adivinaNumero();
int main(int argc, char *argv[]) {
 srand((unsigned)time(NULL));
 adivinaNumero();
 return 0;
}

void adivinaNumero(){
 int n,r;
 n=aleatorioEntero(1,1000);
 cout<<"Tengo un número entre el 1 y 1000. ¿Puedes adivinar cual es?"<<endl;
 cout<<"Por favor escribe tu respuesta: ";
 cin>>r;
 while(r!=n){
  if(n<r){
   mostrarMensaje(1);
   cin>>r;
  }else{
   mostrarMensaje(2);
   cin>>r;
  }
 }
 mostrarMensaje(0);
}

void mostrarMensaje(int n){
 switch(n){
 case 0: 
  cout<<"¡Excelente! ¡Adivinaste el número!";
  break;
 case 1: 
  cout<<"Muy abajo. Intenta de nuevo: ";
  break;
 case 2: 
  cout<<"Muy arriba. Intenta de nuevo: ";
  break; 
 default:
  break;
 } 
}

int aleatorioEntero(int a, int b){
 return  a+rand()%(b-a+1);
}

0 comentarios: