Foros del Web » Programación » C/C++ »

Prueba de escritorio... AYUDA!!!

Estas en el tema de Prueba de escritorio... AYUDA!!! en el foro de C/C++ en Foros del Web. ese es un barajeador que hice pero no se como hacer la prueba de escritorio ya que utilizo elementos que nunk habia utilizado antes, ayudenme ...
  #1 (permalink)  
Antiguo 14/09/2008, 13:01
 
Fecha de Ingreso: agosto-2008
Mensajes: 5
Antigüedad: 6 años, 4 meses
Puntos: 0
Prueba de escritorio... AYUDA!!!

ese es un barajeador que hice pero no se como hacer la prueba de escritorio ya que utilizo elementos que nunk habia utilizado antes, ayudenme porfavor



#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>

int main(void)
{
int carta[53]={0}, num, pal, i=0, est,estan[53]={0},c=0;
/*
carta es el identificador de cada carta
num es el numero que genera una carta
pal es el numero que genera un palo
i es el contador para las cartas
est es el numero de la carta para checar si ya existe
estan son las cartas que existen
check es el contador para checar que cartas existen
*/
char palo[53]; //Le da a la carta i un palo
char salir;

srand(time(NULL));

while (i<=51)
{

c++;
num = rand() % 13; //Hay 13 cartas por palo, se escoje una
est=num;
pal = rand() % 4; //Hay 4 palos, la variable pal se asigna con un palo
num += 2; //num va de 0 a 12 asi que para que empieze desde la carta 2 hasta la 14(Az) le sumo 2
carta[i] = num; //aqui le asigno al numero de la carta i el valor de num

/*Aqui es donde se asigna el simbolo de un palo para la carta*/
switch (pal)
{
case 0:
palo[i]=3; //ASCII corazon
break;
case 1:
est+=13;
palo[i]=4; //ASCII diamante
break;
case 2:
est+=26;
palo[i]=5; //ASCII trebol
break;
case 3:
est+=39;
palo[i]=6 ; //ASCII espada
break;
}
estan[est]+=1;
if (estan[est]==1)
{
if (num<=10)
printf("%4d%c", carta[i], palo[i]);
else
{
switch (num)
{
case 11:
carta[i]='J';
break;
case 12:
carta[i]='Q';
break;
case 13:
carta[i]='K';
break;
case 14:
carta[i]='A';
break;
}
printf("%4c%c", (char)carta[i],palo[i]);
}
i++;
if ((i%4) == 0)
printf("\n");
/*
Lo que sigue es cuando se reparte dodo
para preguntar si quiere volver a repartir
*/
if (i>51)
{
printf("\nPresiona cualquier tecla para repetir.\nPresiona s para salir\n");
scanf("%c", &salir);
printf("\n");
if (salir=='s' || salir=='S')
return 0;
for (i=0;i<=51;i++)
estan[i]=0;
i=0;
}
}
}
}
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:11.
SEO by vBSEO 3.3.2