bueno, supongo que ya tendréis ganas de probar el compilador asi que aqui veremos un poco de programacion tomando como ejemplo un
Generador de Tiradas de Dadosprimeramente....
cliqueamos en File->New Application para generar el entorno de aplicacion nuevo...
lo siguiente será seleccionar un componente Button, un ComboBox un componente Panel y un Label ....y los ponemos en el Form1
nos vamos al Inspector de Objetos (Object Inspector) y seleccionando el ComboBox1 .... ajustamos la propiedad Items de dicho componente....justo aqui
acto seguido rellenamos esta ventana
con la informacion sobre el tipo de tirada que seleccionaremos en el ComboBox (esto activará un tipo de DADO para cada tirada)
editamos la propiedad ItemIndex, cambiando el valor a 0 (cero) ... de esta forma, el ComboBox, mostrará el primer tipo de dados como seleccion por defecto hasta que seleccionemos otro tipo....
finalmente, añadimos #include
el #include y el #include al codigo del programa en la seccion de include y el codigo del evento OnClick() del componente Button como sigue....y nos quedaria el siguiente codigo fuente
- Código:
-
//---------------------------------------------------------------------------
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int RESULTADO_DADOS = 0; //aqui almacenaremos los resultados
time_t t; //estructura tipo time_t para la semilla aleatoria
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
srand((unsigned) time(&t)); //inicializamos semilla aleatoria
randomize();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
switch (ComboBox1->ItemIndex)
{
case 0: RESULTADO_DADOS = rand() % 6; //cogemos el numero del 1-6
if(RESULTADO_DADOS == 0) RESULTADO_DADOS = 6;
break;
case 1: RESULTADO_DADOS = rand() % 10; //cogemos el numero del 1-10
if(RESULTADO_DADOS == 0) RESULTADO_DADOS = 10;
break;
case 2: RESULTADO_DADOS = rand() % 20; //cogemos el numero del 1-20
if(RESULTADO_DADOS == 0) RESULTADO_DADOS = 20
break;
}
//Mostramos los resultados en Label1
Label1->Caption = RESULTADO_DADOS;
// Refrescamos el control Label para actualizar el dato
Label1->Refresh();
RESULTADO_DADOS = 0; // LA VARIABLE A CERO PARA UNA NUEVA TIRADA
}
//---------------------------------------------------------------------------
Obviamente, el uso de estas lineas:
- Código:
-
if(RESULTADO_DADOS == 0) RESULTADO_DADOS = 6;
- Código:
-
if(RESULTADO_DADOS == 0) RESULTADO_DADOS = 10;
- Código:
-
if(RESULTADO_DADOS == 0) RESULTADO_DADOS = 20;
es el de truncar la salida del numero '0' convirtiendolo en el valor maximo que rand() no muestra (empieza desde el 0 hasta el valor que le hemos indicado -1 )
seguidamente, vamos al menu ...opcion PROJECT->Build All y compilamos el programa....