Llenar una matriz nxn con numeros aletaorios

Betita la Gatita
02 de Febrero del 2005
Bueno necesito llenar una matriz de nxn pero lo que pasa que ese llenado es con numeros aleatorios sin que se repitan....la cosa es la siguiente no se como es el algoritmo pa que los numeros aleatorios no se repitan en la matriz porfa si alguien sabe me puede ayudar...muchas gracias....bye

miguel
02 de Febrero del 2005
Hola, Betita.

La idea es:

- Rellena la matriz con ceros.
- Toma un numero aleatorio entre 1 y n cuadrado.
- Colocalo en la primera casilla.
- Toma otro numero aleatorio entre 1 y n cuadrado.
- ¿Está en la matriz?
- Si es que no colocalo en la siguiente casilla.
- Si ya estaba, volvemos a tomar otro numero aleatorio... y así sucesivamente.

Esta es una posible solución.

Para más detalles visita www.maacera.com y envía tus dudas al tutor on-line (en Formación >> Programación C/C++).

Saludos.

Miguelito
02 de Febrero del 2005
puedes utilizar la funcion rand(), pero siempre genera los mismos numeros seudo-aleatorios asi que primero tienes que inicializar una semilla para genere numeros distintos, lo mejor es utilizar el tiempo, ahi va un ejemplo:

//inicializar semilla
srand( (unsigned) time(NULL) );
// y despues solo utiliza la funcion rand
alemento_de_la_matriz=rand();

Tienes que incluir stdlib.h y time.h, espero te sirva de algo

arkahe
02 de Febrero del 2005
mira yo utilizo de copilador el visual c++6.0. ok he echo un bingo ynecesite lo ke tu kieres aki te paso el codigo ok......TE VA HA SERVIR UN MONTON ESTE CODIGO, HATS TIENE PASWORD, ESTE BINGO TE FORMA HASTA 1`000,000 DE CARTILLAS,,, TA CHEVERE, AHY EN LA FUNCION CREAR CARTILLAS SE VE LO KE TU KIERES EN GENERAR NUMERO DIFERNETES.... MIRA LO KE HAGO ES GENERARLOS Y ALAMCENARLOS EN UN ARRAY Y LUEGO PASARLO A UNA MATRIZ OK... AHY VELO TU... CUALKIER DUDA ESCRIBEME [email protected] bye espero ke te sirva!!!!

a deveras esa libreria consola.h lo utilizo en c++ para ke me funcione el gotoxy yta ke en el conio de visual no lo tien ok bye


#include <stdio.h>
#include <string.h>
//Librería simplicada de estensiones de conio y dos.h
#include "consola.h"
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>

/***************** ESTRUCTUTAS ******************
/* */
/* */
/*estructura para las cartillas*/

struct cart
{
int cartilla[5][5];
}cartillas[1000000];

/*estructura para almacenar numeros no
repetidos y luego mandarlo a la matriz*/

struct norepetidos
{
int Norepetidos[25];
}norep[1000000];
/* */
/* */
/***************************************************/


/************** VARIABLES GLOBALES ***************
/* */
/* */

/*en este array se guardan los numeros aleatorios
no repetidos que son 100 los numneros, cada uno
cumple la función de bolilla*/
int nros[101];
/*aqui se almacenan la cantidad de nros acertados
de cada cartilla*/
int acertado[1000000];
/*en este array se guardan los numeros de
cartillas de los ganadores*/
int ganadores[50];
/*en este array se guardan momentaneamente los
numeros aleatorios no repetidos donde luego son
enviados a cada una de las matrices*/
int NumerosRand[25];//
/*almacena el 1 o el 0 segun como sea la clave
verdadera o falsa*/
int password;
/*aqui se guarda la opcion para selecionar ke
jugar*/
int opc;

/* */
/* */
/***************************************************/


/***************** FUNCIONES ******************
/* */
/* */
void funciones(void);
void opcion(int *);
void LeerNroCartillas (int *);
void CrearCartillas (int );
void MostrarCartillas(int);
void CreandoNrosYBuscando(int );
void pass(void);


/* */
/* */
/***************************************************/


/***************************************************
*************** FUNCION PRINCIPAL ***************
***************************************************/

void main (void)
{
funciones();
}


/***************************************************
************ FUNCION LeerNroCartillas ************
***************************************************/

void LeerNroCartillas(int *n)
{
cout<<endl<<endl<<"INGRESE EL NUMERO DE CARTILLAS: ";
cin>>*n;
cout<<endl<<endl;
system("CLS");
}

/***************************************************
************ FUNCION CrearCartillas *************
***************************************************/

void CrearCartillas(int n)
{int i,j,k,l,x,y,c,cont,numero;
srand(time(NULL));//creamos una semilla
for(i=1;i<=n;i++)
{
/******* GENERAMOS LOS NUMEROS ALATORIOS Y LO ALMACENALOS EN
UN ARREGLO DE 25 ELEMENTOS ESTE ES EL ARRAY NumerosRand[25]*/
c=1;
NumerosRand[1]=-1;
for(x=1;x<=300;x++)
{
cont=0;
numero=(2+rand()%(201-1))/2;
for(y=1;y<=c;y++)
{
if(NumerosRand[y]==numero)
{
cont=cont+1;
}
}
if(cont==0)
{
NumerosRand[c]=numero;
c=c+1;
}
if(c==26)
{
x=301;
}
}
/*******TERMINAMOS DE ALMACENAR LOS NUMEROS ALEATORIOS EN NumerosRand[25]*/

l=0;
for(j=1;j<=5;j++)
{
for(k=1;k<=5;k++)
{
l=l+1;
cartillas[i].cartilla[j][k]=NumerosRand[l];
}
}
}
}

/***************************************************
*********** FUNCION MostrarCartillas ************
***************************************************/

void MostrarCartillas(int n)
{int i,j,k,nc;
if(n%2==0)
{
for(i=1;i<=n;i=i+2)
{
cout<<endl<<" CARTILLA "<<i;
cout<<"t t ttt"<<" CARTILLA "<<i+1<<endl<<endl;
for(j=1;j<=5;j++)
{
cout<<"t";
for(k=1;k<=5;k++)
{
cout<<cartillas[i].cartilla[j][k]<<"t";
}
cout<<"tt ";
for(k=1;k<=5;k++)
{
cout<<cartillas[i+1].cartilla[j][k]<<"t";
}
cout<<endl;
}
cout<<endl<<endl;
}
}
else
{
nc=n-1;
for(i=1;i<=nc;i=i+2)
{
cout<<endl<<" CARTILLA "<<i;
cout<<"t t ttt"<<" CARTILLA "<<i+1<<endl<<endl;
for(j=1;j<=5;j++)
{
for(k=1;k<=5;k++)
{
cout<<cartillas[i].cartilla[j][k]<<"t";
}
cout<<"t ";
for(k=1;k<=5;k++)
{
cout<<cartillas[i+1].cartilla[j][k]<<"t";
}
cout<<endl;
}
cout<<endl<<endl;
}
cout<<endl<<" CARTILLA "<<i<<endl<<endl;
for(j=1;j<=5;j++)
{
for(k=1;k<=5;k++)
{
cout<<cartillas[i].cartilla[j][k]<<"t";
}
cout<<endl;
}
}

}

/***************************************************
********** FUNCION CreandoNrosYBuscando *********
***************************************************/

void CreandoNrosYBuscando(int n)
{int i,j,k,l,m,cont,numero,c,ganador, columna, fila;
ganador=0;
c=1;
nros[1]=-1;
srand(time(NULL));
for(i=1;i<=700;i++)
{
cont=0;
numero=1+rand()%(101-1);
for(j=1;j<=c;j++)
{
if(nros[j]==numero)
{
cont=cont+1;
}
}
if(cont==0)
{
nros[c]=numero;
c=c+1;
}
if(c==101)
{
i=701;
}
}
/*dando valor de cero ,para poder hacer la sumatoria de los aciertos de cada
cartilla, en este array se vas a guardar los aciertos de las cartillas*/
for(i=1;i<=n;i++)
{
acertado[i]=0;

}
/*comprovamos la cartilla con el número aleatorio generado*/
cout<<endl<<endl;
cont=0;

switch(opc)
{
/****************caso 1*****************/

case 1:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera columna*/
for(j=1;j<=1;j++)//es el eje y
{
for(k=1;k<=4;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*tercera columna*/
for(j=3;j<=3;j++)//es el eje y
{
for(k=1;k<=4;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*quinta columna*/
for(j=5;j<=5;j++)//es el eje y
{
for(k=1;k<=4;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*primera fila*/
for(j=1;j<=1;j++)//es el eje x
{
for(k=2;k<=5;k=k+2)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*quinta fila */
for(j=5;j<=5;j++)//es el eje x
{
for(k=2;k<=5;k=k+2)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==16)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*******************caso 2*******************/
case 2:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera columna*/
for(j=1;j<=1;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*quinta columna*/
for(j=5;j<=5;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*tercera fila */
for(j=3;j<=3;j++)//es el eje x
{
for(k=2;k<=4;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==13)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*********************caso 3**********************/
case 3:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera fila */
for(j=1;j<=1;j++)//es el eje x
{
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*quinta fila */
for(j=5;j<=5;j++)//es el eje x
{
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*diagonal principal*/
for(k=2;k<=4;k++)//es el eje y
{

if(cartillas[l].cartilla[k][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==13)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*************************caso 4**********************/
case 4:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera columna*/
for(j=1;j<=1;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*quinta columna*/
for(j=5;j<=5;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*primera fila */
for(j=1;j<=1;j++)//es el eje x
{
for(k=2;k<=4;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*para las cordenadas (3,3),(3,4),(3,5)y(4,5)*/

for(j=3;j<=3;j++)//es el eje y
{
for(k=3;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
if(cartillas[l].cartilla[4][5]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==17)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/**************************caso 5*************************/
case 5:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera columna*/
for(j=1;j<=1;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*quinta columna*/
for(j=5;j<=5;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*primera fila */
for(j=1;j<=1;j++)//es el eje x
{
for(k=2;k<=4;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*quinta fila */
for(j=5;j<=5;j++)//es el eje x
{
for(k=2;k<=4;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==16)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*********************caso 6***********************/
case 6:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
for(j=1;j<=5;j++)//es el eje x
{
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==25)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/****************************case 7***************************/
case 7:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*diagonal principal*/
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==5)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/********************************caso 8*****************************/
case 8:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{
j=5;
cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{

for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}
j=j-1;

}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==5)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/**************************caso 9*************************/
case 9:
cout<<endl<<endl<<endl<<endl;
cout<<"QUE COLUMNA QUIERE JUGAR: ";
cin>>columna;
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/* columna ...*/
for(j=columna;j<=columna;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==5)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/**************************caso 10*************************/
case 10:
cout<<endl<<endl<<endl<<endl;
cout<<"QUE FILA QUIERE JUGAR: ";
cin>>fila;
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/* fila ...*/
for(j=fila;j<=fila;j++)//es el eje x
{
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==5)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*******************caso 11*******************/
case 11:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera columna*/
for(j=1;j<=1;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*tercera fila */
for(j=3;j<=3;j++)//es el eje x
{
for(k=2;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==9)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/****************************case 12***************************/
case 12:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{
j=5;
cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{

/*diagonal secundaria*/
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}

/*diagonal principal*/
for(k=1;k<=5;k++)//es el eje y
{
if(k!=3)
{
if(cartillas[l].cartilla[k][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}
}
if(k==2)
{
k=k+1;
}

}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==9)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*******************caso 13*******************/
case 13:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{

/*tercera fila */
for(j=3;j<=3;j++)//es el eje x
{
for(k=2;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*tercera columna*/
for(j=3;j<=3;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{
if(k!=3)
{
if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}
}
if(k==2)
{
k=k+1;
}

}
}


}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==9)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;

}

cout<<endl<<endl<<" EL GANADOR O GANADORES SON"<<endl<<endl;
for(i=1;i<=ganador;i++)
{
cout<<endl<<endl<<"GANADOR "<<i<<" ES LA CARTILLA "<<ganadores[i];
}
cout<<endl<<endl;
getch();

}



/***************************************************
****************** FUNCION pass *****************
***************************************************/

void pass(void)
{
int a,b,c,d,e,f,g,h,i;
clrscr();
cout<<"nnnn";

cout<<endl<<endl<<" ";
gotoxy(43,28);
printf("PASSWORD:");


gotoxy(42,30);
printf("" " ");
gotoxy(43,30);
a=getch();
printf("P");
b=getch();
printf("A");
c=getch();
printf("S");
d=getch();
printf("S");
e=getch();
printf("W");
f=getch();
printf("O");
g=getch();
printf("R");
h=getch();
printf("D");
i=getch();
printf("*");

if(a!=36 || b!=64 || c!=37 || d!=47 || e!=33 || f!=63 || g!=42 || h!=35 || i!=43)
{
printf("" PASSWORD INCORRECTO.");
password=0;

}
if(a==36 && b==64 && c==37 && d==47 && e==33 && f==63 && g==42 && h==35 && i==43)
{
printf("" PASSWORD CORRECTO.nnntBIENVENIDO AL JUEGO .");
password=1;
}


getch();
}

/***************************************************
**************** FUNCION funciones **************
***************************************************/


void funciones (void)
{int n,contador;
setsizexy(100,9999);
settitle(" [BINGO]tttttttttttttttby >> <<erick rojas figueroa >>ttttttttttttttt<< [email protected] >>ttttttttttttttt");
contador=0;
do
{

pass();
if((contador==2)&&(password==0))
{
password=1;
}
contador=contador+1;
}/*PASSWORD*/
while(password!=1);

system("CLS");

if (contador==3)
{
password=0;
}
if(password==1)
{

opcion(&opc);
LeerNroCartillas ( &n);
CrearCartillas ( n);
MostrarCartillas(n);
CreandoNrosYBuscando(n);
system("CLS");
cout<<"nnnnnnnnnnnnnnnnnnnnnnnn";
cout<<" JUEGO DEL BINGO";
cout<<endl;
cout<<" creado por erick rojas figueroa";
cout<<"nnnnnnnnnnnnnnnnnnnnnnnn";
}
else
{
cout<<endl<<endl<<endl<<endl;
cout<<" INTENTE MAS TARDE"<<endl
<<endl<<" hasta la vista baby !!!........";
cout<<endl<<endl<<endl<<endl;
}
}

void opcion(int *opc)
{
cout<<"nnnn";
cout<<" QUE QUIERE JUEGAR";
cout<<endl<<endl<<endl;


cout<<endl<<endl;
cout<<" 1 = FORMAR LA LETRA B ";
cout<<endl<<endl;
cout<<" 2 = FORMAR LA LETRA I ";
cout<<endl<<endl;
cout<<" 3 = FORMAR LA LETRA N ";
cout<<endl<<endl;
cout<<" 4 = FORMAR LA LETRA G ";
cout<<endl<<endl;
cout<<" 5 = FORMAR LA LETRA O ";
cout<<endl<<endl;
cout<<" 6 = FORMAR TODA LA CARTILLA ";
cout<<endl<<endl;
cout<<" 7 = FORMAR LA DIAGONAL PRINCIPAL ";
cout<<endl<<endl;
cout<<" 8 = FORMAR LA DIAGONAL SECUNDARIA ";
cout<<endl<<endl;
cout<<" 9 = COLUMNAS ";
cout<<endl<<endl;
cout<<" 10 = FILAS ";
cout<<endl<<endl;
cout<<" 11 = FORMAR LA LETRA T ";
cout<<endl<<endl;
cout<<" 12 = FORMAR LA LETRA X ";
cout<<endl<<endl;
cout<<" 13 = FORMAR LA FORMA + ";
cout<<endl<<endl;
cout<<endl<<endl<<endl;
cout<<" INGRESE OPCION: ";
cin>>*opc;
cout<<endl<<endl<<endl;
system("CLS");
}






arkahe
02 de Febrero del 2005
mira yo utilizo de copilador el visual c++6.0. ok he echo un bingo ynecesite lo ke tu kieres aki te paso el codigo ok......TE VA HA SERVIR UN MONTON ESTE CODIGO, HATS TIENE PASWORD, ESTE BINGO TE FORMA HASTA 1`000,000 DE CARTILLAS,,, TA CHEVERE, AHY EN LA FUNCION CREAR CARTILLAS SE VE LO KE TU KIERES EN GENERAR NUMERO DIFERNETES.... MIRA LO KE HAGO ES GENERARLOS Y ALAMCENARLOS EN UN ARRAY Y LUEGO PASARLO A UNA MATRIZ OK... AHY VELO TU... CUALKIER DUDA ESCRIBEME [email protected] bye espero ke te sirva!!!!

a deveras esa libreria consola.h lo utilizo en c++ para ke me funcione el gotoxy yta ke en el conio de visual no lo tine ok bye


#include <stdio.h>
#include <string.h>
//Librería simplicada de estensiones de conio y dos.h
#include "consola.h"
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>

/***************** ESTRUCTUTAS ******************
/* */
/* */
/*estructura para las cartillas*/

struct cart
{
int cartilla[5][5];
}cartillas[1000000];

/*estructura para almacenar numeros no
repetidos y luego mandarlo a la matriz*/

struct norepetidos
{
int Norepetidos[25];
}norep[1000000];
/* */
/* */
/***************************************************/


/************** VARIABLES GLOBALES ***************
/* */
/* */

/*en este array se guardan los numeros aleatorios
no repetidos que son 100 los numneros, cada uno
cumple la función de bolilla*/
int nros[101];
/*aqui se almacenan la cantidad de nros acertados
de cada cartilla*/
int acertado[1000000];
/*en este array se guardan los numeros de
cartillas de los ganadores*/
int ganadores[50];
/*en este array se guardan momentaneamente los
numeros aleatorios no repetidos donde luego son
enviados a cada una de las matrices*/
int NumerosRand[25];//
/*almacena el 1 o el 0 segun como sea la clave
verdadera o falsa*/
int password;
/*aqui se guarda la opcion para selecionar ke
jugar*/
int opc;

/* */
/* */
/***************************************************/


/***************** FUNCIONES ******************
/* */
/* */
void funciones(void);
void opcion(int *);
void LeerNroCartillas (int *);
void CrearCartillas (int );
void MostrarCartillas(int);
void CreandoNrosYBuscando(int );
void pass(void);


/* */
/* */
/***************************************************/


/***************************************************
*************** FUNCION PRINCIPAL ***************
***************************************************/

void main (void)
{
funciones();
}


/***************************************************
************ FUNCION LeerNroCartillas ************
***************************************************/

void LeerNroCartillas(int *n)
{
cout<<endl<<endl<<"INGRESE EL NUMERO DE CARTILLAS: ";
cin>>*n;
cout<<endl<<endl;
system("CLS");
}

/***************************************************
************ FUNCION CrearCartillas *************
***************************************************/

void CrearCartillas(int n)
{int i,j,k,l,x,y,c,cont,numero;
srand(time(NULL));//creamos una semilla
for(i=1;i<=n;i++)
{
/******* GENERAMOS LOS NUMEROS ALATORIOS Y LO ALMACENALOS EN
UN ARREGLO DE 25 ELEMENTOS ESTE ES EL ARRAY NumerosRand[25]*/
c=1;
NumerosRand[1]=-1;
for(x=1;x<=300;x++)
{
cont=0;
numero=(2+rand()%(201-1))/2;
for(y=1;y<=c;y++)
{
if(NumerosRand[y]==numero)
{
cont=cont+1;
}
}
if(cont==0)
{
NumerosRand[c]=numero;
c=c+1;
}
if(c==26)
{
x=301;
}
}
/*******TERMINAMOS DE ALMACENAR LOS NUMEROS ALEATORIOS EN NumerosRand[25]*/

l=0;
for(j=1;j<=5;j++)
{
for(k=1;k<=5;k++)
{
l=l+1;
cartillas[i].cartilla[j][k]=NumerosRand[l];
}
}
}
}

/***************************************************
*********** FUNCION MostrarCartillas ************
***************************************************/

void MostrarCartillas(int n)
{int i,j,k,nc;
if(n%2==0)
{
for(i=1;i<=n;i=i+2)
{
cout<<endl<<" CARTILLA "<<i;
cout<<"\t \t \t\t\t"<<" CARTILLA "<<i+1<<endl<<endl;
for(j=1;j<=5;j++)
{
cout<<"\t";
for(k=1;k<=5;k++)
{
cout<<cartillas[i].cartilla[j][k]<<"\t";
}
cout<<"\t\t ";
for(k=1;k<=5;k++)
{
cout<<cartillas[i+1].cartilla[j][k]<<"\t";
}
cout<<endl;
}
cout<<endl<<endl;
}
}
else
{
nc=n-1;
for(i=1;i<=nc;i=i+2)
{
cout<<endl<<" CARTILLA "<<i;
cout<<"\t \t \t\t\t"<<" CARTILLA "<<i+1<<endl<<endl;
for(j=1;j<=5;j++)
{
for(k=1;k<=5;k++)
{
cout<<cartillas[i].cartilla[j][k]<<"\t";
}
cout<<"\t ";
for(k=1;k<=5;k++)
{
cout<<cartillas[i+1].cartilla[j][k]<<"\t";
}
cout<<endl;
}
cout<<endl<<endl;
}
cout<<endl<<" CARTILLA "<<i<<endl<<endl;
for(j=1;j<=5;j++)
{
for(k=1;k<=5;k++)
{
cout<<cartillas[i].cartilla[j][k]<<"\t";
}
cout<<endl;
}
}

}

/***************************************************
********** FUNCION CreandoNrosYBuscando *********
***************************************************/

void CreandoNrosYBuscando(int n)
{int i,j,k,l,m,cont,numero,c,ganador, columna, fila;
ganador=0;
c=1;
nros[1]=-1;
srand(time(NULL));
for(i=1;i<=700;i++)
{
cont=0;
numero=1+rand()%(101-1);
for(j=1;j<=c;j++)
{
if(nros[j]==numero)
{
cont=cont+1;
}
}
if(cont==0)
{
nros[c]=numero;
c=c+1;
}
if(c==101)
{
i=701;
}
}
/*dando valor de cero ,para poder hacer la sumatoria de los aciertos de cada
cartilla, en este array se vas a guardar los aciertos de las cartillas*/
for(i=1;i<=n;i++)
{
acertado[i]=0;

}
/*comprovamos la cartilla con el número aleatorio generado*/
cout<<endl<<endl;
cont=0;

switch(opc)
{
/****************caso 1*****************/

case 1:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera columna*/
for(j=1;j<=1;j++)//es el eje y
{
for(k=1;k<=4;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*tercera columna*/
for(j=3;j<=3;j++)//es el eje y
{
for(k=1;k<=4;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*quinta columna*/
for(j=5;j<=5;j++)//es el eje y
{
for(k=1;k<=4;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*primera fila*/
for(j=1;j<=1;j++)//es el eje x
{
for(k=2;k<=5;k=k+2)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*quinta fila */
for(j=5;j<=5;j++)//es el eje x
{
for(k=2;k<=5;k=k+2)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==16)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*******************caso 2*******************/
case 2:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera columna*/
for(j=1;j<=1;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*quinta columna*/
for(j=5;j<=5;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*tercera fila */
for(j=3;j<=3;j++)//es el eje x
{
for(k=2;k<=4;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==13)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*********************caso 3**********************/
case 3:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera fila */
for(j=1;j<=1;j++)//es el eje x
{
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*quinta fila */
for(j=5;j<=5;j++)//es el eje x
{
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*diagonal principal*/
for(k=2;k<=4;k++)//es el eje y
{

if(cartillas[l].cartilla[k][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==13)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*************************caso 4**********************/
case 4:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera columna*/
for(j=1;j<=1;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*quinta columna*/
for(j=5;j<=5;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*primera fila */
for(j=1;j<=1;j++)//es el eje x
{
for(k=2;k<=4;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*para las cordenadas (3,3),(3,4),(3,5)y(4,5)*/

for(j=3;j<=3;j++)//es el eje y
{
for(k=3;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
if(cartillas[l].cartilla[4][5]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==17)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/**************************caso 5*************************/
case 5:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera columna*/
for(j=1;j<=1;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*quinta columna*/
for(j=5;j<=5;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*primera fila */
for(j=1;j<=1;j++)//es el eje x
{
for(k=2;k<=4;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
/*quinta fila */
for(j=5;j<=5;j++)//es el eje x
{
for(k=2;k<=4;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==16)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*********************caso 6***********************/
case 6:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
for(j=1;j<=5;j++)//es el eje x
{
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==25)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/****************************case 7***************************/
case 7:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*diagonal principal*/
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==5)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/********************************caso 8*****************************/
case 8:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{
j=5;
cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{

for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}
j=j-1;

}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==5)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/**************************caso 9*************************/
case 9:
cout<<endl<<endl<<endl<<endl;
cout<<"QUE COLUMNA QUIERE JUGAR: ";
cin>>columna;
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/* columna ...*/
for(j=columna;j<=columna;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==5)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/**************************caso 10*************************/
case 10:
cout<<endl<<endl<<endl<<endl;
cout<<"QUE FILA QUIERE JUGAR: ";
cin>>fila;
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/* fila ...*/
for(j=fila;j<=fila;j++)//es el eje x
{
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==5)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*******************caso 11*******************/
case 11:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{
/*primera columna*/
for(j=1;j<=1;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{

if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*tercera fila */
for(j=3;j<=3;j++)//es el eje x
{
for(k=2;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}
}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==9)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/****************************case 12***************************/
case 12:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{
j=5;
cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{

/*diagonal secundaria*/
for(k=1;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}

/*diagonal principal*/
for(k=1;k<=5;k++)//es el eje y
{
if(k!=3)
{
if(cartillas[l].cartilla[k][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}
}
if(k==2)
{
k=k+1;
}

}

}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==9)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;
/*******************caso 13*******************/
case 13:
for(i=1;i<=c-1;i++)//cantidad de numeros aleatorios
{

cout<<endl<<endl<<" BOLILLA "<<i<<": "<<nros[i]<<endl<<endl;
for(l=1;l<=n;l++)//el numero de cartillas
{

/*tercera fila */
for(j=3;j<=3;j++)//es el eje x
{
for(k=2;k<=5;k++)//es el eje y
{

if(cartillas[l].cartilla[k][j]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}

}
}

/*tercera columna*/
for(j=3;j<=3;j++)//es el eje y
{
for(k=1;k<=5;k++)//es el eje x
{
if(k!=3)
{
if(cartillas[l].cartilla[j][k]==nros[i])
{
acertado[l]=acertado[l]+1;
cout<<"LA CARTILLA "<<l<<" ACERTO EL NUMERO "<<nros[i]<<" y tiene "<<acertado[l]<<" numeros acertados"<<endl;
}
}
if(k==2)
{
k=k+1;
}

}
}


}
getch();
system("CLS");
MostrarCartillas(n);
/*hallando ganadores*/
for(m=1;m<=n;m++)
{

if(acertado[m]==9)
{
ganador=ganador+1;
ganadores[ganador]=m;
}
}
if(ganador>0)
{
i=c;
}

}
break;

}

cout<<endl<<endl<<" EL GANADOR O GANADORES SON"<<endl<<endl;
for(i=1;i<=ganador;i++)
{
cout<<endl<<endl<<"GANADOR "<<i<<" ES LA CARTILLA "<<ganadores[i];
}
cout<<endl<<endl;
getch();

}



/***************************************************
****************** FUNCION pass *****************
***************************************************/

void pass(void)
{
int a,b,c,d,e,f,g,h,i;
clrscr();
cout<<"\n\n\n\n";

cout<<endl<<endl<<" ";
gotoxy(43,28);
printf("PASSWORD:");


gotoxy(42,30);
printf("\" \" ");
gotoxy(43,30);
a=getch();
printf("P");
b=getch();
printf("A");
c=getch();
printf("S");
d=getch();
printf("S");
e=getch();
printf("W");
f=getch();
printf("O");
g=getch();
printf("R");
h=getch();
printf("D");
i=getch();
printf("*");

if(a!=36 || b!=64 || c!=37 || d!=47 || e!=33 || f!=63 || g!=42 || h!=35 || i!=43)
{
printf("\" PASSWORD INCORRECTO.");
password=0;

}
if(a==36 && b==64 && c==37 && d==47 && e==33 && f==63 && g==42 && h==35 && i==43)
{
printf("\" PASSWORD CORRECTO.\n\n\n\tBIENVENIDO AL JUEGO .");
password=1;
}


getch();
}

/***************************************************
**************** FUNCION funciones **************
***************************************************/


void funciones (void)
{int n,contador;
setsizexy(100,9999);
settitle(" [BINGO]\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tby >> <<erick rojas figueroa >>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<< [email protected] >>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t");
contador=0;
do
{

pass();
if((contador==2)&&(password==0))
{
password=1;
}
contador=contador+1;
}/*PASSWORD*/
while(password!=1);

system("CLS");

if (contador==3)
{
password=0;
}
if(password==1)
{

opcion(&opc);
LeerNroCartillas ( &n);
CrearCartillas ( n);
MostrarCartillas(n);
CreandoNrosYBuscando(n);
system("CLS");
cout<<"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n";
cout<<" JUEGO DEL BINGO";
cout<<endl;
cout<<" creado por erick rojas figueroa";
cout<<"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n";
}
else
{
cout<<endl<<endl<<endl<<endl;
cout<<" INTENTE MAS TARDE"<<endl
<<endl<<" hasta la vista baby !!!........";
cout<<endl<<endl<<endl<<endl;
}
}

void opcion(int *opc)
{
cout<<"\n\n\n\n";
cout<<" QUE QUIERE JUEGAR";
cout<<endl<<endl<<endl;


cout<<endl<<endl;
cout<<" 1 = FORMAR LA LETRA B ";
cout<<endl<<endl;
cout<<" 2 = FORMAR LA LETRA I ";
cout<<endl<<endl;
cout<<" 3 = FORMAR LA LETRA N ";
cout<<endl<<endl;
cout<<" 4 = FORMAR LA LETRA G ";
cout<<endl<<endl;
cout<<" 5 = FORMAR LA LETRA O ";
cout<<endl<<endl;
cout<<" 6 = FORMAR TODA LA CARTILLA ";
cout<<endl<<endl;
cout<<" 7 = FORMAR LA DIAGONAL PRINCIPAL ";
cout<<endl<<endl;
cout<<" 8 = FORMAR LA DIAGONAL SECUNDARIA ";
cout<<endl<<endl;
cout<<" 9 = COLUMNAS ";
cout<<endl<<endl;
cout<<" 10 = FILAS ";
cout<<endl<<endl;
cout<<" 11 = FORMAR LA LETRA T ";
cout<<endl<<endl;
cout<<" 12 = FORMAR LA LETRA X ";
cout<<endl<<endl;
cout<<" 13 = FORMAR LA FORMA + ";
cout<<endl<<endl;
cout<<endl<<endl<<endl;
cout<<" INGRESE OPCION: ";
cin>>*opc;
cout<<endl<<endl<<endl;
system("CLS");
}






noel solw
02 de Febrero del 2005
// program matalea.cpp
// Llenar una matriz nxn con numeros aletaorios
// Enviado el 2 de febrero de 2005
// Bueno necesito llenar una matriz de nxn pero lo que pasa que ese
// llenado es con numeros aleatorios sin que se repitan....
// written in borland c++ - ver 4.5

#include <iomanip.h>
#include <iomanip.h>
#include <stdlib.h>

const int N = 5;

void Show(int a[][N])
{
for(int i = 0;i < N;i++)
{
for(int j = 0;j < N;j++)
cout <<setw(7) << a[i][j];
cout << endl << endl;
}
} // SHOW

void Process(int a[][N])
{
randomize();
int x[N*N];
for(int index = 0;index < N*N;x[index++] = index);
index = 0;
for(int i = 0;i < N;i++)
for(int j = 0;j < N;j++)
{
int num = random(N*N-index++);
a[i][j] = x[num];
for(int k = num;k < N*N-1;k++)
x[k] = x[k+1];
}
} // PROCESS

void main()
{
int a[N][N];
Process(a);
Show(a);
cout << endl << "end of program - good bye ! ! !" << endl;
} // MAIN