Find Jobs
Hire Freelancers

Programar en c c++ (simple)

$10-30 USD

Terminado
Publicado hace casi 7 años

$10-30 USD

Pagado a la entrega
Planteo del problema juego de apuestas en el cual van a participar M jugadores. Al comenzar el juego, se van a registrar los nombres de los jugadores y a cada uno de ellos se le van a entregar K monedas iniciales para apostar, las cuales utilizarán para realizar apuestas durante las (como mucho) N rondas que se realizarán durante el juego. En cada ronda, cada jugador apostará la cantidad de monedas que desee (de entre aquellas monedas que tiene disponibles) a un número que elegirá entre 0 y C - 1. Tras las apuestas de la ronda, se sorteará uno de esos números al azar. Aquellos jugadores que hayan apostado al número ganador obtendrán una ganancia neta igual al doble de la cantidad de monedas que apostaron. Por ejemplo, si un jugador apostó 3 monedas al número ganador, recibirá 6 monedas en total. Los jugadores que no hayan apostado al número ganador, perderán las monedas apostadas en la ronda. Culminada la ronda, se mostrará en pantalla la cantidad de monedas que tiene cada jugador tras culminar la ronda. El juego finalizará en el momento en que alguno de los jugadores se quede sin monedas o cuando hayan transcurrido las N rondas (lo que pase primero). Finalizado el juego, se mostrará por pantalla el nombre del ganador junto con su cantidad final de monedas. El ganador del juego será el que tenga la mayor cantidad de monedas al momento de finalizar. En caso de haber empate, se declarará ganador a cualquiera de ellos. Se pide hacer un programa en lenguaje C que declare los valores para M, K, N y C como constantes simbólicas y que realice las siguientes acciones: 1. Registro de jugadores: Se ingresarán por teclado los nombres de los jugadores, los cuales se almacenarán en un arreglo de M posiciones, una para cada nombre. El contenido de cada celda será un string conteniendo el nombre del jugador. Puede ocurrir que haya más de un jugador con el mismo nombre, por lo que se permitirá el ingreso de nombres repetidos. Por ejemplo, a continuación se muestra un posible arreglo para M = 3. 0 1 2 "Benito" "Ursula" "Petrona" Se llevará la cuenta de la cantidad de monedas que tiene cada jugador en todo momento del juego por lo que, además del arreglo de nombres, se tendrá un segundo arreglo (también de M celdas) conteniendo la cantidad de monedas que tiene cada jugador. Este arreglo se cargará con el valor K en todas sus celdas al inicio del programa. 2. Una vez registrados los M nombres de jugadores y cargadas las K monedas iniciales de cada uno, se procederá a la realización de las rondas. Se jugarán, como mucho, N rondas, excepto que algún jugador se quede sin monedas antes, en cuyo caso el juego terminará en ese momento. En cada ronda, se ingresará por teclado el número apostado por cada jugador y la cantidad de monedas apostadas. El programa deberá controlar que el número apostado esté efectivamente entre 0 y C - 1 y que la cantidad de monedas no supere el total de monedas que tiene el jugador, para lo cual solicitará que se reingresen cualquiera de los dos valores (tantas veces como sea necesario) hasta garantizar que fueron ingresados correctamente. Esta información se almacenará en una matriz de apuestas, de tamaño M x C. Por ejemplo, para M = 3 y C = 5, se muestra a continuación la matriz de apuestas al momento de realizar las apuestas de la primera ronda: 0 1 2 3 4 0 0 2 0 0 0 1 0 0 0 4 0 2 0 3 0 0 0 El primer jugador (Benito) apostó 2 monedas al número 1. El segundo jugador (Ursula) apostó 4 monedas al número 3. El tercer jugador (Petrona) apostó 3 monedas al número 1. Cada jugador puede apostar solamente un número en cada ronda, cuya celda correspondiente en la matriz de apuestas se cargará con la cantidad de monedas apostadas, mientras que el resto de las celdas de la fila de dicho jugador se cargarán siempre con ceros. No se pide mostrar la matriz de apuestas por pantalla, alcanza solamente con utilizarla en memoria para registrar las apuestas. Tomando K = 10 como cantidad inicial de monedas, se muestra a continuación el estado del arreglo de monedas tras realizadas las apuestas de la primera ronda. Benito quedó con 8 monedas, Ursula quedó con 6 monedas y Petrona quedó con 7 monedas. 0 1 2 8 6 7 Acto seguido, se procede al sorteo del número ganador de la ronda, el cual será elegido al azar entre 0 y C - 1 (se debe investigar cómo generar un número al azar en el lenguaje C) y mostrado por pantalla. Si alguno de los jugadores quedó sin monedas al terminar la ronda, el juego terminará en ese momento. Como ejemplo, vamos a suponer que el número sorteado es el 3. Esto significa que Ursula gana 8 monedas (recupera las 4 apostadas y gana otras 4 adicionales), mientras que Benito y Petrona pierden las monedas apostadas. Se muestra a continuación cómo queda el arreglo de monedas, cuyo contenido será desplegado por pantalla tras culminada la ronda: 0 1 2 8 14 7 3. Culminadas las (como mucho) N rondas, se declarará ganador al jugador que haya quedado con la mayor cantidad de monedas tras culminadas las rondas. En caso de que haya más de uno, se declarará ganador a cualquiera de ellos. Como resultado, se mostrará por pantalla el nombre del ganador junto con su cantidad final de monedas y el programa finalizará su ejecución.
ID del proyecto: 14829211

Información sobre el proyecto

3 propuestas
Proyecto remoto
Activo hace 7 años

¿Buscas ganar dinero?

Beneficios de presentar ofertas en Freelancer

Fija tu plazo y presupuesto
Cobra por tu trabajo
Describe tu propuesta
Es gratis registrarse y presentar ofertas en los trabajos
Adjudicado a:
Avatar del usuario
hello,how are you. i read your bid carefully. i am c/c++ expert and have full experience for 10 years. c++ language is my top skill. i can provide most quality and high speed. if you want to success, please contact me. Then, I will give you good result to the proposals.
$100 USD en 1 día
4,9 (49 comentarios)
6,6
6,6
Avatar del usuario
hola yo puedo hacerte ese código ---------------------------------------------------------------------
$30 USD en 1 día
5,0 (1 comentario)
1,7
1,7

Sobre este cliente

Bandera de URUGUAY
Montevideo, Uruguay
5,0
5
Forma de pago verificada
Miembro desde feb 21, 2017

Verificación del cliente

¡Gracias! Te hemos enviado un enlace para reclamar tu crédito gratuito.
Algo salió mal al enviar tu correo electrónico. Por favor, intenta de nuevo.
Usuarios registrados Total de empleos publicados
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Cargando visualización previa
Permiso concedido para Geolocalización.
Tu sesión de acceso ha expirado y has sido desconectado. Por favor, inica sesión nuevamente.