ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Probabilidades


Enviado por   •  12 de Mayo de 2012  •  1.715 Palabras (7 Páginas)  •  363 Visitas

Página 1 de 7

PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE

ESCUELA DE INGENIERÍA

DEPARTAMENTO DE CIENCIA DE LA COMPUTACIÓN

Introducción a la Programación - IIC1102

Interrogación 2

Fecha 19 de Abril 2005

Pregunta 1

Queremos escribir un programa que simule el juego de la ruleta en un casino. En este caso, se trata de una ruleta simplificada, que sólo tiene los números 1, 2, …, 12. Para apostar, un jugador primero especifica el monto de la apuesta, luego elige uno de los números, y finalmente elige el tipo de apuesta. Hay cuatro tipos de apuestas —pleno, paridad, fila y columna— con los siguientes significados:

− Pleno: El jugador gana sólo si la bolita de la ruleta cae exactamente en el número elegido, y gana 12 veces el monto apostado.

− Paridad: El jugador gana si la bolita cae en cualquier número con la misma paridad (par o impar) que el número elegido, y gana 2 veces el monto apostado.

− Fila: El jugador gana si la bolita cae en cualquier número que está en la misma fila que el número elegido, y gana 4 veces el monto apostado. La fila 0 tiene los números 1, 2 y 3; la 1, los números 4, 5 y 6; la 2, los números 7, 8 y 9; y la 3, los números 10, 11 y 12.

− Columna: El jugador gana si la bolita cae en cualquier número que está en la misma columna que el número elegido, y gana 3 veces el monto apostado. La columna 0 tiene los números 3, 6, 9 y 12; la columna 1, los números 1, 4, 7 y 10; y la 2, los números 2, 5, 8 y 11.

En todos los casos, si el jugador no gana, entonces pierde el dinero apostado.

El método main que se adjunta simula la interacción entre el funcionario del casino encargado de la ruleta y un jugador (usuario del programa). El main primero crea un objeto de la clase Ruleta y un objeto de la clase Jugador. Este último es creado con un saldo inicial de dinero para apostar de 100 y su propósito es representar la información del jugador relevante para el juego. La interacción consiste en repetir los siguientes pasos: primero, se le pide al jugador que haga su apuesta; luego, se lanza la bolita; y, finalmente, se determina cómo le fue al jugador. Esta interacción se repite mientras el saldo del jugador esté entre 1 y 999.

Escriba las clases Ruleta y Jugador, con los atributos y métodos sugeridos.

public static void main(String[] args)

{

Ruleta ruleta = new Ruleta();

Jugador jugador = new Jugador(100);

int saldo, monto, numero, tipo, premio;

saldo = jugador.obtenerSaldo();

while (0 < saldo && saldo < 1000) {

monto = Interfaz.PedirEntero("Monto apostado: ");

numero = Interfaz.PedirEntero("Elija casilla: ");

tipo = Interfaz.PedirEntero(

"Tipo de apuesta:\n"+

" Pleno = 1\n"+

" Paridad = 2\n"+

" Columna = 3\n"+

" Fila = 4");

jugador.definirApuesta(monto, numero, tipo);

ruleta.lanzarBolita();

ruleta.anunciarResultado();

monto = jugador.obtenerMonto();

numero = jugador.obtenerNumero();

tipo = jugador.obtenerTipo();

premio = ruleta.calcularPremio(monto, numero, tipo);

jugador.actualizarSaldo(premio);

saldo = jugador.obtenerSaldo();

}

}

Solución y pauta

– clase Ruleta: 3 pts.,

– atributos numero: 0.5 pts.

– método lanzarBolita: 0.5 pts.

– método anunciarResultado: 0.5 pts.

– método calcularPremio: 1.5 pts.

– clase Jugador: 3 pts.;

– método constructor: 0.5 pts.

– método definirApuesta: 0.5 pts.

– método actualizarSaldo: 0.5 pts.

– atributos saldo, monto, numero y tipo: 0.5 pts. en total (aprox. 0.1 pt./atributo)

– métodos obtenerSaldo, obtenerMonto, obtenerNumero y obtenerTipo: 1 pt. en total (0.25 pts./metodo)

public class Ruleta

{

private int numero;

public void lanzarBolita() {

numero = random(1, 12);

}

public void anunciarResultado() {

Interfaz.MostrarMensaje(

“La bolita cayo en: ”+numero);

}

public int calcularPremio(int mt; int num; int tp) {

int premio;

if (tp == 1) {

if (num == numero) premio = 12*mt;

else premio = -mt;

}

if (tp == 2) {

if (num%2 == numero%2) premio = 2*mt;

else premio = -mt;

}

if (tp == 3) {

if

...

Descargar como (para miembros actualizados)  txt (11.9 Kb)  
Leer 6 páginas más »
Disponible sólo en Clubensayos.com