Version:0.9 StartHTML:0000000105 EndHTML:0000010843 StartFragment:0000000152 EndFragment:0000010809
/******************************************************/
/*************** Isidro Pastor Jorda ******************/
/******************************************************/
/****************** Telematica ************************/
/******************************************************/
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
float Aleatorio( float downlim, float uplim );
int main()
{
float A, B, C, D, E, F, al, quiniela;
bool salir = false;
int opcion ;
srand (time(NULL)); // inicializamos la funcion srand para numeros aleatorios
cout << " Programa de generacion de numeros de Primitiva y Quiniela deportiva V 0.1 "<< endl;
cout << " **************************************************************************" << endl ;
do
{
cout << endl << " ****** M E N U ***********" ;
cout << endl << " * 1.- Loteria Primitiva *" ;
cout << endl << " * 2.- Quiniela Deportiva *" ;
cout << endl << " * 3.- Salir *" ;
cout << endl << " **************************" ;
do
{
cout << endl << " Selecciona una opcion -> " ;
cin >> opcion ;
}
while (opcion < 1 || opcion > 3 );
switch (opcion)
{
case 1:
A = 0; // iniciamos las variables
B = 0;
C = 0;
D = 0;
E = 0;
F = 0;
for (int i=1; i<=6; i++) // repetimos los aleatorios hasta que tengamos 6
{
do
al = Aleatorio (1, 50); // llamamos a la funcion Aleatorio hecha en el ejercicio 2
while ( al == A || al == B || al == C || al == D || al == E || al == F); // repetimos hasta que sean diferentes todas
switch (i) // en este swich iremos asignando valores a las variables en cada paso hasta 6 variables
{
case 1:
A = al;
break;
case 2:
B = al;
break;
case 3:
C = al;
break;
case 4:
D = al;
break;
case 5:
E = al;
break;
case 6:
F = al;
break;
}
}
cout << endl << " Los numeros generados son " << A << " " << B << " " << C << " " << D << " " << E << " " << F << endl;
cin.ignore();
cout << endl << " Pulsa INTRO para continuar ...." << endl;
cin.get();
system ("cls");
break;
case 2:
cout << endl << " Resultados aleatorios para la Quiniela Deportiva" << endl << endl ;
for (int i=1; i<15; i++) // repčtiremos hasta que hayamos imprimido por pantalla 14 valores
{
quiniela = Aleatorio (1, 4); // llama a la funcion aleatorio con limites 1 incluido y 4 excluido
if (i<10) // ajuste del primer caracter para alinear los resultados
cout << " ";
if (quiniela == 1 )
cout << i << ".- 1" << endl; // si el aleatorio generao es 1 pasamos 1 a la pantalla
if (quiniela == 2)
cout << i << ".- 2" << endl; // si es un 2 pasamos un 2 a la pantalla
if (quiniela == 3)
cout << i << ".- X " << endl; // si es un 3 pasaremos una X a la pantalla
}
cin.ignore();
cout << endl << " Pulsa INTRO para continuar ...." << endl;
cin.get();
system ("cls");
break;
case 3:
salir = true;
break;
}
}
while (!salir);
system ("cls");
cout << " ************************" << endl;
cout << " * Fin de la Aplicacion *" << endl;
cout << " ************************" << endl << endl ;
system("PAUSE");
return 0;
}
/************************************************************************************
* Funcion: Aleatorio
* Descripcion: Funcion que nos da un numero aleatorio comprendido
* entre un limite inferior, downlim (incluido) y un limite
* superior (excluido) uplim
*
* Parametros
* Nombre E/S Descripcion
* ------- ----- -----------
* dowlim float Limite inferior (Incluido)
* uplim float Limite Superior (Excluido)
*
* Valor Devuelto:
* La funcion devuelve un valor float correspondiente al numero aleatorio
* que ha generado la funcion entre un limite inferior (incluido) y uno superior
*
************************************************************************************/
float Aleatorio( float downlim, float uplim ) // Función que genera numeros aleatorios
{
float aleat;
if ( downlim < uplim)
{
do
{
aleat = rand();
}
while ( aleat < downlim || aleat >= uplim );
}
else
aleat = 0;
return aleat;
}