Curso autodidacta/complementario de Matlab: videos, ejercicios, códigos y más ...
Juego de volados y casinos ricos
Guión:
%% ¿En cuanto tiempo un casino te deja sin dinero?
% este guion simula un juego de tirar una moneda entre un casino y un
% apostador.
%% Guión escrito por Vicente Torres Zúñiga; 18 de abril 2003.
clc; clear; close all % Limpia la memoria
casino = 100000; % Dinero con el que empieza el casino
apostador = 10; % Dinero con el que empieza el apostador
casino_zero = casino;
apostador_zero = apostador;
num_evento = 0; % Número de veces que han apostado, que se inicia en cero.
dinero_apostador(casino) = 0; % Tentativamente pongo este vector para
% hacer más rapida la asignición de memoria. Pero al final el vector puede
% ser más grande o pequeño que esta asignación
% Todas las apuestas son iguales, de una unidad. Es decir, en un juego
% se pierde o gana una unidad.
while (apostador > 0 && casino > 0)
num_evento = num_evento +1;
dinero_apostador(num_evento) = apostador;
moneda = rand(1); % rand brinda números pseudoaleatorios entre 0 y 1
if moneda >=0.5 % gana el casino
casino = casino +1;
apostador = apostador -1;
else % gana apostador
casino = casino - 1;
apostador = apostador +1;
end
end
porciento_perdida_casino = 100*max(dinero_apostador)/casino_zero; % porcentualmente cuanto es lo máximo que
% le puedo sacar al casino
porciento_ganancia_apostador = 100*(max(dinero_apostador)- apostador_zero)/apostador_zero; % porcentualmente cuanto es lo máximo que
% le puedo sacar al casino
num_juegos = num_evento; %cuantos juegos realizamos
% Vizualización
axes('fontsize',14,'fontweight','b')
plot(dinero_apostador,'b', 'LineWidth',6)
xlabel('Número de juego, N', 'fontsize',20,'fontweight','b')
ylabel('Dinero del apostador, D', 'fontsize',20,'fontweight','b')
title(['Al principio, el dinero del casino es ', num2str(casino_zero./apostador_zero), ' veces más grande que el del apostador'], 'fontsize',20,'fontweight','b')
set(gca, 'Fontsize',18, 'fontweight','b')
axis([0, num_juegos, 0, max(dinero_apostador)]);
salida = [porciento_ganancia_apostador, porciento_perdida_casino, num_juegos];
% fin del guión
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario