Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: Danyel_Casvill en 6 Febrero 2011, 21:28 PM

Título: Volver a ejecutar una clase main
Publicado por: Danyel_Casvill en 6 Febrero 2011, 21:28 PM
Hola amigos amantes de la programacion, necesito que me ayuden con algo, veran tengo un programa pero necesito que al presionar un boton en este evento el frame se vuelva a ejecutar y el anterior se cierre como si lo resetearamos.
Este es el codigo que tengo:
Código (cpp) [Seleccionar]
#include <iostream.h>
#include <stdlib.h>
void main(){
  int i, a, b;
  randomize();
  a = random(20);
  cout<<"Adivinanza\n";
  cout<<"Adivina el número que estoy pensando\n";
  for (i = 1; i < 9; i++){
    cin>>b;
    if (b == a){
      cout<<"Muy bien, has acertado en "<<i<<" oportunidades \n";
      break;
    }
    else if(b>a)
           cout<<"Es alto\n";
           else
             cout<<"Es bajo\n";
    }
    if (b != a){
      cout<<"Lo siento, el número es: "<<a;
    }
cin.get(); cin.get();
}

Pero no se como hacer que luego se vulelva a empezar el programa.
De antemano gracias :P
Título: Re: Volver a ejecutar una clase main
Publicado por: Edu en 6 Febrero 2011, 21:35 PM
Usa algun While, Do-While seria mejor
Título: Re: Volver a ejecutar una clase main
Publicado por: Slava_TZD en 6 Febrero 2011, 21:41 PM
¿No has dado Bucles?
Título: Re: Volver a ejecutar una clase main
Publicado por: Danyel_Casvill en 6 Febrero 2011, 22:00 PM
Cita de: XXX-ZERO-XXX en  6 Febrero 2011, 21:35 PM
Usa algun While, Do-While seria mejor
Para remplazar los of`s??

Pues si, voy a intentarlo, gracias, pero y como ago para reiniciar el programa??
bucles?? :silbar:
Gracias por responder  ;-)
Título: Re: Volver a ejecutar una clase main
Publicado por: Edu en 6 Febrero 2011, 22:06 PM
Lee sobre el bucle While si dale
Título: Re: Volver a ejecutar una clase main
Publicado por: BlackZeroX en 6 Febrero 2011, 22:49 PM
.
Así?

Código (cpp) [Seleccionar]


#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;


void Swap(int *l,int *u)
{
   int Ptmp = *l;
   *l = *u;
   *u = Ptmp;
}
int NumeroAleatorio(int l,int u)
{
   if ( l > u)
       Swap( &l , &u );
   srand(time(NULL) );
   return ( rand()%(u-l+1)+l );
}

void Adivinanzanumerica()
{
   int i , a, b;
   a = NumeroAleatorio(0,20);

   cout << "Adivinanza" << endl;
   cout << "Adivina el número que estoy pensando" << endl;
   for (i = 1; i < 9; i++)
   {
       cin >> b;
       if ( b > a)
           cout <<"Es alto" << endl;
       else if( b > a )
           cout <<"Es bajo" << endl;
       else
           break;
   }
   if (b == a)
       cout << "Muy bien, has acertado en " << i << " oportunidades" << endl;
   else
       cout<<"Lo siento, el número es: " << a << endl << endl;
}

int main(){
   int b;
   do
   {
       Adivinanzanumerica();
       cout << "X Num. <- Salir." << endl;
       cout << "1 <- Vovler a jugar" << endl;
       cin >> b;
   } while( b == 1 );
}



Dulces Lunas!¡.