Penney's game
Project description
Overview
Penney's game, named after its inventor Walter Penney, is a binary (head/tail) sequence generating game between two or more players. Player A selects a sequence of heads and tails (of length 3 or larger), and shows this sequence to player B. Player B then selects another sequence of heads and tails of the same length. Subsequently, a fair coin is tossed until either player A's or player B's sequence appears as a consecutive subsequence of the coin toss outcomes. The player whose sequence appears first wins [Wikipedia].
Here we have a friendly clone of this game that I wrote during coronavirus quarantine days.
PyPI Counter | |
Github Stars |
Branch | master | dev |
Travis | ||
AppVeyor |
Code Quality |
Installation
Source Code
- Download and install Python3.x (>=3.5)
- Select
Add to PATH
option - Select
Install pip
option
- Select
- Download Version 0.3 or Latest Source
- Run
pip install -r requirements.txt
orpip3 install -r requirements.txt
(Need root access) - Run
python3 setup.py install
orpython setup.py install
(Need root access)
PyPI
- Check Python Packaging User Guide
- Run
pip install penney
orpip3 install penney
(Need root access)
Easy Install
- Run
easy_install --upgrade penney
(Need root access)
Exe Version (Windows)
- Download Exe-Version 0.3
- Run
Penney-0.3.exe
DMG Version (MacOS)
- Download DMG-Version 0.3
- Open DMG file
- Copy
Penney
into your system - Run
Penney
How to Play
- Open
CMD
(Windows) orTerminal
(UNIX) - Run
python -m penney
orpython3 -m penney
(or run proper executable version)
GIF
Try Penney in Your Browser!
You can play Penney's game online in interactive Jupyter Notebooks via the Binder service! Try it out now! :
- Open
Notebook.ipynb
Contribution
Changes and improvements are more than welcome! ❤️ Feel free to fork and open a pull request.
Please consider the following :
- Fork it!
- Create your feature branch (under
dev
branch) - Add your functions/methods to proper files
- Pass all CI tests
- Update
CHANGELOG.md
- Describe changes under
[Unreleased]
section
- Describe changes under
- Submit a pull request into
dev
(please complete the pull request template)
Issues & bug reports
Just fill an issue and describe it. I'll check it ASAP! or send an email to sepand@pycm.ir.
- Please complete the issue template
Dependencies
master | dev |
References
1- Penney, Walter. "Problem 95: penney-ante." Journal of Recreational Mathematics 7 (1974): 321.
2- Zajkowski, Krzysztof. "Penney's game between many players." arXiv preprint arXiv:1212.3973 (2012).
3- Guy, R. K., and John Horton Conway. Winning Ways for your Mathematical Plays. Academic Press, London, 1982.
4- Humble, Steve, and Yutaka Nishiyama. "Humble-Nishiyama Randomness Game-A New Variation on Penney's Coin Game." (2010).
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Unreleased
0.3 - 2020-04-16
Changed
README.md
modified- Minor issues fixed
print_result
function tie condition bug fixed
0.2 - 2020-04-08
Added
det
functionprob_calc
functionprint_prob
functionC_calc
functionNotebook.ipynb
filebuild_unix.sh
file- Github action
Changed
README.md
modifiedversion_check.py
updated
0.1 - 2020-03-21
Added
- Player mode
- Computer mode
- Exe version
- Test system
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.