Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kaixtr/cobracoral
Pseudo linguagem de programação para aprendizado de lógica
https://github.com/kaixtr/cobracoral
portugol programming programming-language pseudolang python python3
Last synced: about 1 month ago
JSON representation
Pseudo linguagem de programação para aprendizado de lógica
- Host: GitHub
- URL: https://github.com/kaixtr/cobracoral
- Owner: KaiXtr
- License: gpl-3.0
- Created: 2022-05-22T17:02:24.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-02-29T14:16:26.000Z (10 months ago)
- Last Synced: 2024-02-29T15:34:48.966Z (10 months ago)
- Topics: portugol, programming, programming-language, pseudolang, python, python3
- Language: Python
- Homepage:
- Size: 138 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Cobracoral
Linguagem de programação feita para ensinar algoritmos.
Portugol programming language for learning# Como utilizar Cobracoral:
Para executar código cobracoral, é necessário ter a linguagem python instalada no sistema, e então, executar o arquivo shell.py no diretório /src. Utilize o código abaixo para executar o arquivo de exemplo:`python src/shell.py exemplo.cbr`
# Como programar em Cobracoral:
## Variáveis
Formados por um par **_nome da variável_ = _valor da variável_**, são todos os dados necessários para a execução e criação de um algoritmo. As variáveis podem conter valores de vários tipos, como _inteiro, texto, lógico e real_.
`var x = 10`
`var y = "Olá Mundo!"`
`var z = verdadeiro`
`var a = 2.5`
`var b = pi`## Comentários
Comentários são trechos do código que não são processados pelo interpretador, sendo livres para escrita fora da programação.
`# comentário`
`# eu posso escrever o que eu quiser aqui`## Aritmética
**Adição:**
`x mais y`
`x + y`
**Subtração:**
`x menos y`
`x - y`
**Multiplicação:**
`x vezes y`
`x * y`
`x × y`
**Divisão:**
`x dividido y`
`x / y`
`x \ y`
`x ÷ y`
**Resto da divisão:**
`x resto y`
`x % y`
**Potenciação:**
`x elevado y`
`x ^ y`
`x ** y`
**Radiciação:**
`x rad y`
`x √ y`
`x // y`## Comparações Numéricas
**Igualdade:**
`0 == 0 ∴ verdadeiro`
`0 == 1 ∴ falso`
**Diferença:**
`0 != 0 ∴ falso`
`0 != 1 ∴ verdadeiro`
`0 ~= 0 ∴ falso`
`0 ~= 1 ∴ verdadeiro`
**Menor que:**
`2 < 3 ∴ verdadeiro`
`3 < 2 ∴ falso`
**Maior que**
`2 > 3 ∴ falso`
`3 > 2 ∴ verdadeiro`
**Menor ou igual a:**
`2 <= 2 ∴ verdadeiro`
`1 <= 2 ∴ verdadeiro`
`3 >= 2 ∴ falso`
**Maior ou igual a:**
`6 >= 6 ∴ verdadeiro`
`8 >= 6 ∴ verdadeiro`
`3 >= 6 ∴ falso`## Comparações Lógicas
**AND:**
`1 e 1 ∴ verdadeiro`
`0 e 1 ∴ falso`
`1 & 0 ∴ falso`
`0 & 0 ∴ falso`
**OR:**
`1 ou 1 ∴ verdadeiro`
`0 ou 1 ∴ verdadeiro`
`1 | 0 ∴ verdadeiro`
`0 | 0 ∴ falso`
**NAND:**
`1 ne 1 ∴ falso`
`0 ne 1 ∴ verdadeiro`
`1 !& 0 ∴ verdadeiro`
`0 ~& 0 ∴ verdadeiro`
**NOR:**
`1 nou 1 ∴ falso`
`0 nou 1 ∴ falso`
`1 !| 0 ∴ falso`
`0 ~| 0 ∴ verdadeiro`
**XOR:**
`1 xou 1 ∴ falso`
`0 xou 1 ∴ verdadeiro`
`1 xou 0 ∴ verdadeiro`
`0 xou 0 ∴ falso`
**XNOR:**
`1 xnou 1 ∴ verdadeiro`
`0 xnou 1 ∴ falso`
`1 xnou 0 ∴ falso`
`0 xnou 0 ∴ verdadeiro`
**Condicional:**
`1 => 1 ∴ verdadeiro`
`0 => 1 ∴ falso`
`1 => 0 ∴ verdadeiro`
`0 => 0 ∴ verdadeiro`
**Bicondicional:**
`1 <=> 1 ∴ verdadeiro`
`0 <=> 1 ∴ falso`
`1 <=> 0 ∴ falso`
`0 <=> 0 ∴ verdadeiro`## Entrada e Saída de Dados
**Comando _Escrever (texto)_:** escreve uma mensagem de texto no terminal.
`escrever("Olá Mundo!")`
**Comando _Escrever_ret (texto)_:** escreve uma mensagem de texto no terminal e retorna o resultado.
`escrever_ret("Olá Mundo!")`
**Comando _Ler (variável)_:** aguarda a entrada de um usuário.
`ler(x)`
**Comando _Ler_inteiro (variável)_:** aguarda a entrada de um número inteiro do usuário.
`ler_inteiro(x)`
**Comando _Limpar_:** limpa todo texto anterior do terminal.
`limpar()`
`cls()`
**Comando _Pausar_ ()_:** aguarda uma tecla pressionada qualquer do usuário.
`pausar()`
**Comando _Esperar (segundos)_:** espera por um intervalo de x segundos.
`esperar(3)`# Análise de dados
**Comando _É_um_número (variável)_:** verifica se a variável informada é um número.
`É_um_número(x)`
`E_um_número(x)`
`É_um_numero(x)`
`E_um_numero(x)`
**Comando _É_um_número (variável)_:** verifica se a variável informada é um número.
`É_um_número(x)`
`E_um_número(x)`
`É_um_numero(x)`
`E_um_numero(x)`## Listas
**Comando _Adicionar (elemento)_:** adiciona um elemento à uma lista.
`x = [0,1]`
`x.adicionar(2)`
`x = [0,1,2]`
**Comando _Remover (índice)_:** remove um elemento de uma lista.
`x = [2,5]`
`x.remover(1)`
`x = [2]`
**Comando _Tamanho (lista/texto)_:** verifica o tamanho de uma lista ou texto.
`x = [0,1,5,8]`
`y = tamanho(x)`
`y = 4`## Funções gerais do Cobracoral
**Comando _Ajuda ()_:** exibe um texto de ajuda para o usuário.
`ajuda()`
**Comando _Listar ()_:** exibe todas as funções instaladas da linguagem.
`lista()`
**Comando _Sair ()_:** sair do shell da linguagem.
`sair()`
# Agradecimentos
Muito obrigado, David Callanan, por disponibilizar o vídeo aulas sobre a criação de linguagens de programação e seu código fonte.
[Repositório]: (https://github.com/davidcallanan/py-myopl-code)