Monty Hall (Mario Version)

Publicado por Xerxes (última atualização em 13/06/2014)

[ Hits: 2.751 ]

Homepage: -

Download mario_bau.sh




Veja a imagem:

http://www.mariowiki.com/images/thumb/b/bf/Toad_House_SMB3_NES.png/160px-Toad_House_SMB3_NES.png

Mario e Toad estão numa sala onde há três baús (baú 1, 2 e 3).
Toad diz que dentro de UM dos três baús tem um prêmio, e nada nos outros dois.
Toad diz que Mario deve escolher um baú. Depois disso, ele (Toad) irá mostrar um baú vazio e perguntar se Mario quer trocar sua escolha ou não.
Mario escolheu o baú número 1. Toad abriu o baú 3 que estava vazio e perguntou ao Mario se ele queria trocar de baú ou continuar com o baú 1. Era a última chance de Mario.

Qual é a melhor opção para Mario?

1. trocar de baú, optando pelo baú 2.
2. Não trocar. Permanecer com o baú 1.
3. tanto faz.

Este script faz um teste das chances de Mario encontrar o prêmio, tanto escolhendo trocar como não trocar o baú. Trata-se de um problema conhecido como Monty Hall.

http://pt.m.wikipedia.org/wiki/Problema_de_Monty_Hall

  



Esconder código-fonte

#!/bin/bash

# versão 1.0
# por Xerxes Lins (www.vivaolinux.com.br/~xerxeslins)
# 11/06/2014

# Veja a imagem:

# http://www.mariowiki.com/images/thumb/b/bf/Toad_House_SMB3_NES.png/160px-Toad_House_SMB3_NES.png

# Mario e Toad estão numa sala onde há três baús (baú 1, 2 e 3).
# Toad diz que dentro de UM dos três baús tem um prêmio, e nada nos outros dois.
# Toad diz que Mario deve escolher um baú. Depois disso, ele (Toad) irá mostrar um baú vazio
# e perguntar se Mario quer trocar sua escolha ou não.
# Mario escolheu o baú número 1. Toad abriu o baú 3 que estava vazio e perguntou
# ao Mario se ele queria trocar de baú ou continuar com o baú 1. Era a última chance de Mario.

# Qual é a melhor opção para Mario?

# 1. trocar de baú, optando pelo baú 2.
# 2. Não trocar. Permanecer com o baú 1.
# 3. tanto faz.

# Este script faz um teste das chances de Mario encontrar o prêmio, tanto escolhendo trocar
# como não trocar o baú. Trata-se de um problema conhecido como Monty Hall.

# Vamos lá!

#quantas vezes Mario vai tentar
num_vezes=31 #(31 para 30 vezes, sempre um a mais)
vez_atual=1

#numero de vezes que mario acharia o prêmio sem trocar de baú e trocando
vezes_sem_trocar=0; vezes_trocando=0

clear
echo "Mario e as possibilidades... Testando $[$num_vezes-1] vezes."
echo " "

function mario_escolhe() {

  #define o baú escolhio por Mario e o baú com prêmio, aleatoriamente
  bau_com_premio=$[$RANDOM % 3 ]
  bau_escolhido=$[$RANDOM % 3 ]

  #Toad sempre abre um baú vazio e nunca o mesmo baú escolhido por Mario
  bau_de_toad=0
  while [ "$bau_de_toad" = "$bau_escolhido" ] || [ "$bau_de_toad" = "$bau_com_premio" ]; do
    bau_de_toad=$[$RANDOM % 3]
  done

  echo " "
  echo -n "$vez_atual - Mario escolheu primeiro o baú nº $[1+$bau_escolhido]. Toad abriu o baú nº $[1+$bau_de_toad]. "

  if [ "$bau_escolhido" = "$bau_com_premio" ]; then
    echo -n "Dessa vez, se Mario NÃO trocar o baú, ganhará o prêmio!"
    vezes_sem_trocar=$[$vezes_sem_trocar+1]
    else
      echo -n "Dessa vez, se Mario trocar o baú, ganhará o prêmio!"
      vezes_trocando=$[$vezes_trocando+1]
  fi
}


while [ "$num_vezes" -gt "$vez_atual" ]; do
  mario_escolhe
  vez_atual=$[$vez_atual+1]
done

echo ""
echo ""
echo "Resultado:"
echo "Quantidade de sucessos se NÃO trocasse o baú: $vezes_sem_trocar"
echo "Quantidade de sucessos se trocasse o baú: $vezes_trocando"
echo " "
echo "E então,trocar de baú aumenta ou não as chances de encontrar o prêmio? :]"
echo "Mais informações em: http://pt.m.wikipedia.org/wiki/Problema_de_Monty_Hall"
exit 0

Scripts recomendados

Acelerar leitura e escrita de um HD (hdx/sdx)

Script Multifunção (Ubuntu e derivados)

Abrindo e Fechando a Gaveta do CD-Rom de Forma Interativa

Montar Imagem iso no Nautilus-Script ou no Nautilus-Actions

Bloquear pelo Hosts


  

Comentários
[1] Comentário enviado por vitinho217 em 04/07/2014 - 10:45h

Que massa cara !

[2] Comentário enviado por xerxeslins em 04/07/2014 - 11:01h

valeu x)


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts