Skip to content

Projeto criado para concretizar os conhecimentos adquiridos sobre algoritmo guloso (greed) na matéria de Projeto de Algoritmos ofertado pela Universidade de Brasília.

License

Notifications You must be signed in to change notification settings

Jonathan-Oliveira/Pedra_Papel_Tesoura

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pedra, papel e tesoura

Sobre

Pedra, papel e tesoura, também chamado em algumas regiões do Brasil de jokempô. No jogo de Pedra, Papel, Tesoura, os jogadores devem esticar a mão, com a sua escolha. Podendo ser representado da seguinte forma:

  • A mão fechada significa Pedra;

  • A mão aberta significa Papel;

  • A mão com os dedos indicador e médio estendidos significa Tesoura.

O jogo consiste em várias rodadas, cada rodada é independente uma da outra. Em cada rodada, os dois jogadores mostram uma das seguintes coisas ao mesmo tempo: pedra, papel ou tesoura. Se ambos os jogadores mostraram as mesmas coisas, o resultado da rodada é um empate. Caso contrário, as seguintes regras se aplicam:

  • se um jogador mostrou pedra e o outro mostrou tesoura, então o jogador que mostrou pedra é considerado o vencedor e o outro é considerado perdedor;
  • se um jogador mostrou uma tesoura e o outro papel, então o jogador que mostrou uma tesoura é considerado o vencedor e o outro é considerado o perdedor;
  • se um jogador mostrou papel e o outro pedra, então o jogador que mostrou papel é considerado o vencedor e o outro é considerado perdedor.

Considerando que você e mais um amigo decidiram jogar exatamente 𝑛 rodadas do jogo descrito acima. Você decidiu mostrar pedra 𝑎1 vezes, mostrar a tesoura 𝑎2 vezes e mostrar papel 𝑎3 vezes. Seu amigo decidiu mostrar pedra 𝑏1 vezes, mostrar a tesoura 𝑏2 vezes e mostrar papel 𝑏3 vezes. Porém, você e seu amigo não escolheram a sequência em que mostram as coisas. É garantido que 𝑎1+𝑎2+𝑎3= 𝑛 e 𝑏1+𝑏2+𝑏3= 𝑛. Ou seja, que jogaram a mesma quantidade de rodadas.

Nossa tarefa é estimar a quantidade máxima e mínima de vezes que você pode ganhar jogando contra seu amigo!

Screenshots

  • Demais screenshots estão na sessão de Uso

Instalação

Linguagem: Javascript Framework: Node

É necessário a instalação do Node.

Para clonar e rodar a aplicação, são necessários: Git, Node instalados.

Para rodar o projeto você precisará rodar os seguintes comandos no terminal do seu computador:

Clone este repositório

cd ~/your/directory/
git clone https://github.com/Jonathan-Oliveira/Pedra_Papel_Tesoura.git

Vá para o diretório da aplicação

cd ./Pedra_Papel_Tesoura/

Construa a aplicação

Em abas separadas do terminal você deverá rodar:

    cd Pedra_Papel_Tesoura/backend 
    npm install
    npm start
    cd Pedra_Papel_Tesoura/frontend
    npm install
    npm start

Acesse o seguinte link em seu navegador

O servidor poderá ser acessado em http://localhost:3000 enquanto o frontend será acessado em http://localhost:8080

Uso

Ao acessar a página inicial, informe a quantidade de rodadas que serão jogadas.

Após isso, adicione a quantidade de vezes que você pretendo usar a Pedra, Tesoura e Papel. Logo abaixo, insira os valores do seu amigo.

Para ter o resultado de chances máximas e mínimas de ganhar, selecione a opção de "Calcular"

Contribuintes


Ana Carvalho

Jonathan Oliveira

About

Projeto criado para concretizar os conhecimentos adquiridos sobre algoritmo guloso (greed) na matéria de Projeto de Algoritmos ofertado pela Universidade de Brasília.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published