Instantly share code, notes, and snippets.

🦐
Working on Potigol Language (potigol.github.io)

# Leonardo Lucena lrlucena

🦐
Working on Potigol Language (potigol.github.io)
Last active April 28, 2024 21:51
Números Primos
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 crivo(num: Lista[Inteiro]): Lista[Inteiro] = se num == [] então [] senão a = num.cabeça a::crivo(num.selecione(x => x mod a <> 0)) fim num = 2::3::5::7:: (para n de 1 até 100, a em [1,3,7,9] gere n * 10 + a fim) primos = crivo(num)
Last active April 6, 2024 16:21
Matemática Discreta - Composição de Relações
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 Amizade = [('A', 'B'), ('B', 'A'), ('B', 'C'), ('C', 'B'), ('A', 'D'), ('D', 'A')] AmigosDeAmigos = para a em Amizade, b em Amizade se a.segundo == b.primeiro e # (x,y) e (y,z) => (x,z) a.primeiro <> b.segundo e # x <> z não Amizade.contém((a.primeiro, b.segundo)) gere (a.primeiro, b.segundo) fim
Created March 26, 2024 13:30
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 tipo Posicao = (Inteiro, Inteiro) tipo Tabuleiro = Lista[Posicao] criarTabuleiro(tamanho: Inteiro): Tabuleiro = para x de 1 até tamanho, y de 1 até tamanho gere (x, y) fim
Created October 30, 2023 21:08
Relações - Matemática Discreta
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 R = [(1,2), (2,1), (1,1), (2,3), (3,3)] A = [1, 2, 3] def reflexiva(R, A): for x in A: if (x, x) not in R: return False return True def simetrica(R):
Last active November 16, 2023 12:18
Recursão
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 # Análise Combinatória comb(n, k: Inteiro): Inteiro = escolha k caso 1 => n caso k se k == n => 1 caso k => comb(n-1, k-1) + comb(n-1, k) fim escreva comb(6, 2)
Last active June 30, 2023 17:22
Exercícios de Programação Funcional usando Scala
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 import io.StdIn.readInt // Implemente as funções a seguir usando uma abordagem funcional // - sem usar 'var' // - Substitua ??? pela implementação de cada função def maior(a: Int, b: Int) = ??? def mdc(a: Int, b: Int) = ??? def somaRecursiva(lista: List[Int]): Int = ??? def somaFold(lista: List[Int]) = ???
Last active June 7, 2023 18:15
OBI 2023 - Fase 1

# Subsequencia

Verifica se é uma subsequencia

```subsequencia(x, y: Lista[Inteiro]): Logico =
se y == []              entao verdadeiro
senaose x == []              entao falso
senaose x.cabeça == y.cabeça entao subsequencia(x.cauda, y.cauda)
senao subsequencia(x.cauda, y)```
Last active June 1, 2024 18:12
Árvore

# Árvore Binária de Expressão

Código Fonte

Construção de uma árvore binária para representar expressões aritmética envolvendo números inteiros e os operadores binários +, -, *, /.

O programa lê uma expressão aritmética escrita em notação polonesa e gera uma árvore binária para representá-la. Depois cálcula o valor da expressão e reescreve a expressão na notação prefixa e infixa.