Genera una baraja aleatoriamente y la ordena
#include "stdafx.h"
#include "iostream"
#include "conio.h"
#include "string"
#include "stdlib.h" //Para usar la función Random!
using namespace std;
const int fil = 4;
const int col = 13;
int baraja[fil][col];
//Se generará aleatoriamente la baraja!
void generarBaraja()
{
for(int i=0;i<fil;i++)
{
for(int j=0;j<col;j++)
{
bool OK = false;
while(OK == false)
{
baraja[i][j] = 1 + rand() % 13;
bool repetido = false;
for(int k=j-1;k>=0;k--)
{
if(baraja[i][j]==baraja[i][k])//Verifica si la actual carta generada ya existe!
{
repetido = true;
}
}
if(repetido == false)
OK = true;
}
}
}
}
void mostrarBaraja(string palo[])
{
for(int i=0;i<fil;i++)
{
cout<<endl<<palo[i]<<endl;
for(int j=0;j<col;j++)
{
cout<<baraja[i][j]<<" ";
}
}
}
//Metodo bubble sort
void ordenarBaraja()
{
int temp;
for(int i=0;i<fil;i++)//Para cada palo
{
for(int j=0;j<col-1;j++)
{
for(int k=j+1;k<col;k++)
{
if(baraja[i][j]>baraja[i][k])
{
temp=baraja[i][j];
baraja[i][j]=baraja[i][k];
baraja[i][k]=temp;
}
}
}
}
}
void main()
{
string palo[] = {"Espadas","Treboles","Corazones","Cocos"};
generarBaraja();
cout<<"Baraja Generada:"<<endl;
mostrarBaraja(palo);
cout<<endl<<endl<<"Presione una tecla para ordenar su baraja..."<<endl;
_getch();
ordenarBaraja();
cout<<endl<<"Baraja Ordenada:"<<endl;
mostrarBaraja(palo);
_getch();
}
No hay comentarios:
Publicar un comentario