Skip to main content

Little game based on Game of Live from John Conway

Project description

Jogo da vida

O que é?

É uma simulação que segue regras bem definidas de como um grupo de seres vivos deve se orientar. O jogo foi criado de modo a reproduzir, através de regras simples, as alterações e mudanças em grupos de seres vivos, tendo aplicações em diversas áreas da ciência. É definido um tabuleiro bidimensional (nesse código será considerada uma matriz quadrada para facilitar a representação computacional) com valores binários para definir se o elemento da matriz - que representa uma célula, por exemplo - está viva, ou morta.

É o exemplo de autômato celular mais conhecido e foi criado por John Conway, em 1970.

Nesse código será adotado 0 para morto e 1 para vivo.

Regras

  • Toda célula morta com exatamente três vizinhos vivos torna-se viva (nascimento);
  • Toda célula viva com menos de dois vizinhos vivos morre por isolamento;
  • Toda célula viva com mais de três vizinhos vivos morre por superpopulação;
  • Toda célula viva com dois ou três vizinhos vivos permanece viva.

Desenvolvimento

O jogo não precisa de interações com o usuário após a declaração do estado inicial. Ele é interessante para analisar como um estado pode evoluir para um mais complexo, dado regras simples. Para conhecer mais sobre a criação desse tipo de algoritmo, recomendo ler a página do Wikipedia (https://pt.wikipedia.org/wiki/Jogo_da_vida). Lá consta diversas curiosidades sobre a criação e como você pode encontrar aplicações diferentes (até na música!) do jogo da vida.

Sobre o código

A configuração inicial do estado da população é feita por inputs no terminal. O resultado é mostrado no terminal, mas é possível também salvar as gerações em um arquivo .csv, para algum estudo estatístico futuro.

Contribuições

Quer contribuir com uma nova feature? Perfeito. Quer sugerir/colaborar em algo? Me envie um e-mail para me15degrees@poggers.team, ou abra uma issue.

Game of Life

What is it?

It is a simulation that follows well-defined rules on how a group of living beings should orient themselves. The game was created to reproduce, through simple rules, the alterations and changes in groups of living beings, having applications in various areas of science. A two-dimensional board is defined (in this code, a square matrix will be considered to facilitate computational representation) with binary values to define whether the element of the matrix - which represents a cell, for example - is alive or dead.

It is the most well-known example of a cellular automaton and was created by John Conway in 1970.

In this code, 0 will be used for dead and 1 for alive.

Rules

  • Any dead cell with exactly three live neighbors becomes alive (birth);
  • Any live cell with fewer than two live neighbors dies by isolation;
  • Any live cell with more than three live neighbors dies by overpopulation;
  • Any live cell with two or three live neighbors remains alive.

Development

The game does not need interactions with the user after declaring the initial state. It is interesting for analyzing how a state can evolve into a more complex one, given simple rules. To learn more about the creation of this type of algorithm, I recommend reading the Wikipedia page (https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life). There you will find various curiosities about its creation and how you can find different applications (even in music!) of the game of life.

About the code

The initial configuration of the population state is done through inputs in the terminal. The result is displayed in the terminal, but it's also possible to save the generations in a .csv file for future statistical studies.

Contributions

Want to contribute a new feature? Perfect. Want to suggest/collaborate on something? Send me an email at me15degrees@poggers.team, or open an issue.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gvita-0.2.0.tar.gz (3.6 kB view details)

Uploaded Source

File details

Details for the file gvita-0.2.0.tar.gz.

File metadata

  • Download URL: gvita-0.2.0.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for gvita-0.2.0.tar.gz
Algorithm Hash digest
SHA256 bf01dcad809d2dfbf2ba1f9f4493b13dc4359618a261ab3ca29c3df43e0db95a
MD5 cd0a0723dcf54570299f9f9e01987e1e
BLAKE2b-256 1ca26f9dc67abbd9d5202819968451f13581e9be860fd1d94e778ffe28ee08a0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page