Sacar un naipe de la baraja

23/Sep/2010 Java , , , 4 Comentarios

Una de las preguntas que hemos recibido hace poco era sobre como podemos hacer un programa en Java que sacase naipes de una baraja. Y la verdad que me parece un programa interesante y fácil de explicar.

La idea es poder sacar una carta aleatoria de la baraja (una baraja inglesa o francesa). Básicamente una baraja dónde haya Picas ♠, Corazones , Diamantes y Tréboles ♣. Las cartas irán del as al diez y habrá tres figuras: jota, reina y rey.

Como hemos comentado esto es un tema de ser aleatorio. Así que sacaremos un número aleatorio para el palo y otro número aleatorio para el número de la carta.

Pero definamos unos arrays que nos sirvan para el texto.

  1. String[] palo = {"Picas","Corazones","Diamantes","Tréboles"};
  2. String[] carta = {"as","dos","tres","cuatro","cinco","seis","siete","ocho","nueve","diez","jota","reina","rey"};

La forma de sacar un número aleatorio es mediante el método .random() de la clase Math. El método .random() nos ofrece un número entre 0.0 y 1.0. Es por ello que tendremos que multiplicar al resultado el número hasta el cual queramos sacar números aleatorios.

Así en el caso del palo multiplicaremos por 4 y en el caso de la carta multiplicaremos por 13. El código será el siguiente:

  1. int iPalo = (int)(Math.random()*4);
  2. int iCarta = (int)(Math.random()*13);

Ya solo nos quedará coger el número aleatorio para acceder al array y extraer el elemento...

  1. System.out.println("La carta aleatoria es " + carta[iCarta] + " de " + palo[iPalo]);

Vídeos sobre Java


Difunde el Conocimiento

Si te ha gustado el artículo o te ha sido de utilidad, no dejes de compartirlo con tus amigos en las redes sociales... Te estaremos muy agradecidos. :-D

4 comentarios en “Sacar un naipe de la baraja”

Víctor Cuervo

Víctor Cuervo

@serio,

Me alegro que te sirviese. Gracias por el comentario.
Saludos.

Víctor Cuervo

sergio

Muchas gracias me sirvió para algo parecido que quiero hacer

buen blog

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

*