EJERCICIOS RESUELTOS - Barajado de Cartas en Java

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

EJERCICIOS RESUELTOS

Programas, Ejercicios, Algoritmos y Código en C, C++ y Java.

Principal ▼

lunes, 21 de noviembre de 2011

Barajado de Cartas en Java


Este programa es parte del libro Java Cómo Programar, Séptima edición, de Deitel. Algunos de los
problemas propuestos más complicados del capítulo 7 tienen que ver con la modificación de éste
código. Por eso lo incluyo aquí como una referencia. Lo que hace es solamente barajar todas las
cartas, como puede verse ejecutando este programa.

El siguiente código debe guardarse con el nombre PruebaPaqueteDeCartas.java

public class PruebaPaqueteDeCartas


{ // Abre clase PruebaDeCartas

public static void main(String args[])


{ // Abre main
PaqueteDeCartas miPaqueteDeCartas = new PaqueteDeCartas();
miPaqueteDeCartas.barajar();

///////////////////////////////////
// IMPRIME
//////////////////////////////////

System.out.println("\n");
for ( int i = 0; i < 13; i++ )
{ // Abre for
System.out.printf("%-20s%-20s%-20s%-20s\n",
miPaqueteDeCartas.repartirCarta(), miPaqueteDeCartas.repartirCarta(),
miPaqueteDeCartas.repartirCarta(), miPaqueteDeCartas.repartirCarta());
} // Cierra for

System.out.println("\n");
} // Cierra main
} // Cierra clase PruebaDeCartas

El siguiente código debe guardarse con el nombre Carta.java

public class Carta

{ // Abre clase Carta

private String cara;


private String palo;
public Carta( String caraCarta, String paloCarta)
{ // Abre constructor
cara = caraCarta;
palo = paloCarta;

} // Cierra constructor

public String toString()


{ // Abre metodo toString
return cara + " de " + palo;
} // Cierra metodo toString
} // Cierra clase Carta

El siguiente código debe guardarse con el nombre


PaqueteDeCartas.java

import java.util.Random;

public class PaqueteDeCartas

{ // Abre clase PaqueteDeCartas


private Carta paquete[];
private int cartaActual;
private final int NUMERO_DE_CARTAS = 52;
private Random numerosAleatorios;

/////////////////////////////////////////////////////////////////
// CONSTRUCTOR
/////////////////////////////////////////////////////////////////

public PaqueteDeCartas()
{ // ABre constructor PaqueteDeCartas

String caras[] = { "AS", "DOS", "TRES", "CUATRO", "CINCO", "SEIS", "SIETE",


"OCHO", "NUEVE", "DIEZ", "JOTO", "QUINA", "REY"};
String palos[] = { "CORAZONES", "DIAMANTES", "TREBOLES", "ESPADAS"};

paquete = new Carta[ NUMERO_DE_CARTAS ];


cartaActual = 0;
numerosAleatorios = new Random();

for ( int cuenta = 0; cuenta < paquete.length; cuenta++ )


paquete[ cuenta ] = new Carta( caras[cuenta % 13], palos[cuenta/13]);
} // Cierra constructor PaqueteDeCartas

/////////////////////////////////////////////////////////////////
// METODO BARAJAR
/////////////////////////////////////////////////////////////////

public void barajar()


{ // Abre metodo barajar
cartaActual = 0;

for ( int primera = 0; primera < paquete.length; primera++ )


{ // Abre for
int segunda = numerosAleatorios.nextInt(NUMERO_DE_CARTAS);
Carta temp = paquete[primera];

paquete[primera] = paquete[segunda];
paquete[segunda] = temp;

} // Cierra for
} // Cierra metodo barajar

public Carta repartirCarta()


{ // Abre metodo repartirCarta
if (cartaActual < paquete.length )
return paquete[cartaActual++];
else return null;
} // Cierra metodo repartirCarta
} // Cierra clase PaqueteDeCartas

hitmontop en 11/21/2011 11:17:00 p. m.

Compartir

11 comentarios:

emi 12 de abril de 2013, 21:11


Como puedo ponerles imagenes o sea las mismas de las cartas por favor ayudame. Gracias
Responder

Respuestas

hitmontop 12 de abril de 2013, 21:24


¡Hola, emi! No sé cómo hacerlo. No sé si programas en un lenguaje visual o algo así. Disculpa
por no poder ayudarte. Saludos.

Responder

Anónimo 16 de abril de 2013, 0:39


Uy estoy pegada en lo mismo. No sé como poner imágenes. Si alguno sabe ayudaa por favor. Tengo que
hacer un solitario. /: Cualquier cosa programo en Java con Netbeans.
Responder

Respuestas

hitmontop 16 de abril de 2013, 21:43


Kris, como dije, no sé cómo hacerlo. Si averiguas, envíanos por favor un link o algo. Muchos
saludos.

Responder
Anónimo 24 de noviembre de 2013, 15:37
como puedo determinar si la mano es par o tercia???
Responder

Respuestas

Anónimo 24 de noviembre de 2013, 16:04


Revisa http://hitmontop-ejerciciosresueltos.blogspot.mx/2011/01/deitelc513.html

Responder

Anónimo 11 de marzo de 2016, 8:52


jajaja
Responder

Anónimo 11 de enero de 2017, 12:42


tienes que poner una array.png dentro de la carpeta sox con el numero 20 crack
Responder

Destrampado 18 de abril de 2017, 11:41


asi como estan de searadas las clases, como lo harias pero con herencia padre e hijo?
Responder

Sirena Michiru 4 de septiembre de 2017, 22:18


¿Hay alguna manera de que la carta NO regrese a la baraja y vayan saliendo cada vez menos?
Responder

Unknown 7 de octubre de 2017, 16:05


como hago para que al final me salga la suma de cada grupo de cartas

Responder
Introduce tu comentario...

Comentar como: Cuenta de Goog

Publicar Vista previa

Enlaces a esta entrada


Crear un enlace

‹ Página principal ›
Ver versión web

Con la tecnología de Blogger.

También podría gustarte