Skip to content

Commit

Permalink
Replace master branch with page content via GitHub
Browse files Browse the repository at this point in the history
  • Loading branch information
lrlucena committed Jul 31, 2015
1 parent d82de73 commit e000e1f
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 1 deletion.
2 changes: 2 additions & 0 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,8 @@ <h2>
<p>Para executar o Editor de Código digite no prompt do terminal</p>

<p><code>java -jar epotigol.jar</code></p>

<p><img src="https://cloud.githubusercontent.com/assets/303460/8604675/7180d638-2656-11e5-9239-90d29628d9d0.png" alt="Editor Potigol"></p>
</li>
<li>
<p>Para executar um programa em Potigol digite no prompt do terminal</p>
Expand Down
2 changes: 1 addition & 1 deletion params.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"name":"Linguagem Potigol","tagline":"Programação para todos","body":"> # Potigol é ...\r\n> Uma linguagem moderna para aprender a programar.\r\n\r\n---\r\n\r\n*[Download](https://github.com/potigol/Potigol/releases)*\r\n\r\n## Características\r\n * Projetada para ser usada por alunos iniciantes\r\n * Tipagem estática com inferência de tipos\r\n * Palavras-chave em português \r\n * Multiparadigma\r\n * Estímulo ao paradigma funcional: valores imutáveis, casamento de padrões, funções como valores\r\n\r\n##Como usar:\r\n - Baixe a versão mais recente do Potigol https://github.com/potigol/Potigol/releases\r\n - Descompacte o arquivo\r\n - Para executar o Editor de Código digite no prompt do terminal\r\n \r\n ````java -jar epotigol.jar````\r\n\r\n - Para executar um programa em Potigol digite no prompt do terminal\r\n\r\n ````java -jar potigol.jar arquivo.poti````\r\n\r\n - No Windows basta usar ````epotigol```` ou ````potigol arquivo.poti````.\r\n \r\nExemplos: https://github.com/potigol/Potigol/wiki/jogos\r\n\r\n## A Linguagem\r\n\r\n### Variáveis\r\n````python\r\nx = 10 # Valor fixo\r\n\r\nvar y = 10 # Valor alterável\r\ny := y + 2\r\n````\r\n\r\n### Operação Aritméticas\r\n````python\r\n5 + 3\r\n5 - 3\r\n5 * 3\r\n5 / 3\r\n5 div 3\r\n5 mod 3\r\n````\r\n\r\n### Entrada\r\n````python\r\na = leia_inteiro\r\nb = leia_numero\r\nc = leia_texto\r\nx, y, z = leia_inteiro\r\nnúmeros = leia_inteiros(5) # lê um lista de 5 inteiros , um por linha\r\nnúmeros = leia_inteiros(\",\") # lê uma lista de números separados por vírgula\r\n````\r\n\r\n### Saída\r\n````python\r\nescreva \"Olá Mundo\" # Escreve e passa para a próxima linha\r\nimprima \"Olá \" # Escreve e continua na mesma linha\r\nescreva \"Mundo\"\r\n\r\nnome = \"Mundo\"\r\nescreva \"Olá {nome}\"\r\n````\r\n\r\n### Se\r\n````python\r\nse x > 5 então\r\n escreva \"Maior do que cinco.\"\r\nfim\r\n\r\n---\r\nse x > 5 então\r\n escreva \"Maior do que cinco.\"\r\nsenão\r\n escreva \"Menor ou igual a cinco.\"\r\nfim\r\n\r\n---\r\nse x > 8 então\r\n escreva \"Maior do que oito.\"\r\nsenãose x > 6 então\r\n escreva \"Maior do que seis.\"\r\nsenãose x > 4 então\r\n escreva \"Maior do que quatro.\"\r\nsenãose x > 2 então\r\n escreva \"Maior do que dois.\"\r\nsenão\r\n escreva \"Menor ou igual a dois.\"\r\nfim\r\n````\r\n\r\n### Escolha\r\n````python\r\nescolha x\r\n caso 1 => escreva \"Um\"\r\n caso 2 => escreva \"Dois\"\r\n caso 3 => escreva \"Três\"\r\n caso _ => escreva \"Outro valor\"\r\nfim\r\n````\r\n\r\n### Para\r\n````python\r\npara i de 1 até 10 faça\r\n escreva i\r\nfim\r\n````\r\n### Enquanto\r\n````python\r\nvar i = 0\r\nenquanto i<=10 faça\r\n escreva i\r\n i := i + 1\r\nfim\r\n````\r\n\r\n### Funções\r\n````python\r\nsoma(x, y: Inteiro) = x + y\r\n \r\na, b = leia_inteiro\r\nc = soma(a, b)\r\nescreva \"{a} + {b} = {c}\"\r\n\r\nfatorial(n: Inteiro)\r\n var f = 1\r\n para i de 2 até n faça\r\n f := f * i\r\n fim\r\n f\r\nfim\r\n\r\na = leia_inteiro\r\nescreva \"Fatorial de {a} é {fatorial(a)}\"\r\n````\r\n\r\n## Tipos\r\n\r\n### Número (Inteiro e Real)\r\n````python\r\n12345.678.inteiro # 12345\r\n12345.678.arredonde # 12346\r\n12345.678.arredonde(2) # 12345.68\r\n12345.texto # \"12345\"\r\n12345 formato \"%8d\" # \" 12345\"\r\n123.45 formato \"%.1f\" # \"123.4\"\r\n````\r\n\r\n### Texto\r\n````python\r\n\"123\".inteiro # 123\r\n\"12abc3\".inteiro # 12\r\n\"abc\".inteiro # 0\r\n\r\n\"12.3\".real # 12.3\r\n\"12a.3\".real # 12.0\r\n\"abc\".real # 0.0\r\n\r\n\"abc\".tamanho # 3\r\n\"abc\".posição('b') # 2\r\n\"abc\".posição('d') # 0\r\n\"abc\".contém('a') # verdadeiro\r\n\"abc\".contém('d') # falso\r\n\r\n\"Abc\".maiúsculo # \"ABC\"\r\n\"Abc\".minúsculo # \"abc\"\r\n\"Abc\".inverta # \"cbA\"\r\n\r\n\"Isto é um texto\".divida # [\"Isto\", \"é\", \"um\", \"texto\"]\r\n\"Isto é um texto\".divida(\"t\") # [\"Is\", \"o é um \", \"ex\", \"o\"]\r\n\"Isto é um texto\".lista # [\"I\", \"s\", \"t\", \"o\", \" \", \"é\", \" \", \"u\", \"m\", \" \", \"t\", \"e\", \"x\", \"t\", \"o\"]\r\n\r\n\"abc\".cabeça # 'a'\r\n\"abc\".cauda # \"bc\"\r\n\"abc\".último # 'c'\r\n\"abcde\".pegue(3) # \"abc\"\r\n\"abcde\".passe(3) # \"de\"\r\n\r\n\"abcb\".selecione(letra => letra<>'c') # \"abb\"\r\n\"abcb\".passe_enquanto(letra => letra<>'c') # \"cb\"\r\n\"abcb\".pegue_enquanto(letra => letra<'c') # \"ab\"\r\n````\r\n\r\n### Lista\r\n````python\r\n[2, 4, 6, 8, 10] # lista literal\r\n2 :: [4, 6, 8, 10] # [2, 4, 6, 8, 10]\r\n[2, 4, 6, 8, 10].tamanho # 5\r\n[2, 4, 6, 8, 10].cabeça # 2\r\n[2, 4, 6, 8, 10].cauda # [4, 6, 8, 10]\r\n[2, 4, 6, 8, 10].último # 10\r\n[2, 4, 6, 8, 10].pegue(2) # [2, 4]\r\n[2, 4, 6, 8, 10].passe(2) # [6, 8, 10]\r\n\r\n\r\n[2, 4, 6, 8, 10].inverta # [10, 8, 6, 4, 2]\r\n[2, 6, 8, 10, 4].ordene # [2, 4, 6, 8, 10]\r\n[2, 4, 6] + [8, 10] # [2, 4, 6, 8, 10]\r\n[2, 4, 6].junte # \"246\"\r\n[2, 4, 6].junte(\", \") # \"2, 4, 6\"\r\n[2, 4, 6].junte(\"[\", \", \", \"]\") # \"[2, 4, 6]\"\r\n\r\na = [2, 4, 6, 8, 10]\r\na[3] # 6\r\na.posição(6) # 3\r\na.posição(12) # 0\r\na.contém(6) # verdadeiro\r\na.contém(12) # falso\r\na.remova(4) # [2, 4, 6, 10]\r\na.insira(3,5) # [2, 4, 5, 6, 8, 10]\r\n\r\nLista.imutável(5, 0) # [0, 0, 0, 0, 0]\r\nLista.vazia[Inteiro] # [] - Lista vazia de inteiros\r\n\r\n# Matrizes e Cubos\r\na = [[1, 2], [3, 4]] # Matriz 2x2\r\na[2] # [3, 4]\r\na[2][1] # 3\r\nb = Matriz.imutável(2, 2, 0) # b == [[0, 0], [0, 0]]\r\nc = Cubo.imutável(2, 2, 2, \"-\") # c == [[[\"-\", \"-\"],[\"-\", \"-\"]],[[\"-\", \"-\"],[\"-\", \"-\"]]] \r\nc[1][2][1] # \"-\"\r\n\r\n# Listas mutáveis\r\na = Lista.mutável(5, 0) # [0, 0, 0, 0, 0].mutável\r\na[3] := 5 # a == [0, 0, 5, 0, 0].mutável\r\n \r\n# Funções de alta-ordem\r\n[2, 4, 6, 8, 10].selecione(n => n mod 4 == 0) # [4, 8]\r\n[2, 4, 6, 8, 10].mapeie(n => n div 2) # [1, 2, 3, 4, 5]\r\n[2, 4, 6]. injete(0)((a,b) => a + b) # 0 + 2 + 4 + 6 == 12\r\n[2, 4, 6]. injete((a,b) => a + b) # 2 + 4 + 6 == 12\r\n[2, 4, 6, 2, 4].pegue_enquanto(n => n < 6) # [2, 4]\r\n[2, 4, 6, 2, 4].passe_enquanto(n => n < 6) # [6, 2, 4]\r\n````\r\n\r\n### Tupla\r\n````python\r\nt = (2015, \"potigol\", 1.0) # Tupla do tipo (Inteiro, Texto, Real\r\nt.primeiro # 2015\r\nt.segundo # \"potigol\"\r\nt.terceiro # 1.0\r\n````\r\n\r\n## Funções Matemática\r\n````python\r\nPI\r\nsen(3.14)\r\ncos(3.14)\r\ntg(1)\r\narcsen(1)\r\narccos(1)\r\narctg(1)\r\n\r\nabs(-2.4) # 2.4\r\nraiz(9) # 3.0\r\nlog(2)\r\nlog10(2)\r\n\r\naleatório() # número aleatório entre 0 e 1\r\naleatório(10) # número aleatório entre 1 e 10\r\naleatório(1, 6) # número aleatório entre 1 e 6\r\naleatório([2, 4, 6, 8, 10]) # número aleatório pertencente à lista [2, 4, 6, 8, 10]\r\n````\r\n\r\n\r\n## Programação Funcional\r\n\r\n### Casamento de Padrões\r\n````python\r\n# QuickSort\r\nquicksort(num: Lista[Inteiro]): Lista[Inteiro] = \r\n escolha num\r\n caso [] => []\r\n caso pivo::resto => \r\n menores = resto.filtre( _ <= pivo )\r\n maiores = resto.filtre( _ > pivo )\r\n quicksort(menores) + pivo::quicksort(maiores)\r\n fim\r\n\r\nescreva \"Digite alguns números separados por espaços\"\r\nnumeros = leia_inteiros(\" \")\r\nescreva \"Os números ordenados:\"\r\nescreva quicksort(numeros)\r\n````\r\n\r\n### Funções como valores\r\n````python\r\nnumeros = [1, 2, 3, 4, 5, 6, 7, 8]\r\npares = numeros.filtre(n => n mod 2 == 0)\r\nsoma = numeros.injete(0)((a,b) => a + b)\r\ndobro = numeros.mapeie(n => n * 2)\r\n````","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."}
{"name":"Linguagem Potigol","tagline":"Programação para todos","body":"> # Potigol é ...\r\n> Uma linguagem moderna para aprender a programar.\r\n\r\n---\r\n\r\n*[Download](https://github.com/potigol/Potigol/releases)*\r\n\r\n## Características\r\n * Projetada para ser usada por alunos iniciantes\r\n * Tipagem estática com inferência de tipos\r\n * Palavras-chave em português \r\n * Multiparadigma\r\n * Estímulo ao paradigma funcional: valores imutáveis, casamento de padrões, funções como valores\r\n\r\n##Como usar:\r\n - Baixe a versão mais recente do Potigol https://github.com/potigol/Potigol/releases\r\n - Descompacte o arquivo\r\n - Para executar o Editor de Código digite no prompt do terminal\r\n \r\n ````java -jar epotigol.jar````\r\n\r\n ![Editor Potigol](https://cloud.githubusercontent.com/assets/303460/8604675/7180d638-2656-11e5-9239-90d29628d9d0.png)\r\n\r\n - Para executar um programa em Potigol digite no prompt do terminal\r\n\r\n ````java -jar potigol.jar arquivo.poti````\r\n\r\n - No Windows basta usar ````epotigol```` ou ````potigol arquivo.poti````.\r\n \r\nExemplos: https://github.com/potigol/Potigol/wiki/jogos\r\n\r\n## A Linguagem\r\n\r\n### Variáveis\r\n````python\r\nx = 10 # Valor fixo\r\n\r\nvar y = 10 # Valor alterável\r\ny := y + 2\r\n````\r\n\r\n### Operação Aritméticas\r\n````python\r\n5 + 3\r\n5 - 3\r\n5 * 3\r\n5 / 3\r\n5 div 3\r\n5 mod 3\r\n````\r\n\r\n### Entrada\r\n````python\r\na = leia_inteiro\r\nb = leia_numero\r\nc = leia_texto\r\nx, y, z = leia_inteiro\r\nnúmeros = leia_inteiros(5) # lê um lista de 5 inteiros , um por linha\r\nnúmeros = leia_inteiros(\",\") # lê uma lista de números separados por vírgula\r\n````\r\n\r\n### Saída\r\n````python\r\nescreva \"Olá Mundo\" # Escreve e passa para a próxima linha\r\nimprima \"Olá \" # Escreve e continua na mesma linha\r\nescreva \"Mundo\"\r\n\r\nnome = \"Mundo\"\r\nescreva \"Olá {nome}\"\r\n````\r\n\r\n### Se\r\n````python\r\nse x > 5 então\r\n escreva \"Maior do que cinco.\"\r\nfim\r\n\r\n---\r\nse x > 5 então\r\n escreva \"Maior do que cinco.\"\r\nsenão\r\n escreva \"Menor ou igual a cinco.\"\r\nfim\r\n\r\n---\r\nse x > 8 então\r\n escreva \"Maior do que oito.\"\r\nsenãose x > 6 então\r\n escreva \"Maior do que seis.\"\r\nsenãose x > 4 então\r\n escreva \"Maior do que quatro.\"\r\nsenãose x > 2 então\r\n escreva \"Maior do que dois.\"\r\nsenão\r\n escreva \"Menor ou igual a dois.\"\r\nfim\r\n````\r\n\r\n### Escolha\r\n````python\r\nescolha x\r\n caso 1 => escreva \"Um\"\r\n caso 2 => escreva \"Dois\"\r\n caso 3 => escreva \"Três\"\r\n caso _ => escreva \"Outro valor\"\r\nfim\r\n````\r\n\r\n### Para\r\n````python\r\npara i de 1 até 10 faça\r\n escreva i\r\nfim\r\n````\r\n### Enquanto\r\n````python\r\nvar i = 0\r\nenquanto i<=10 faça\r\n escreva i\r\n i := i + 1\r\nfim\r\n````\r\n\r\n### Funções\r\n````python\r\nsoma(x, y: Inteiro) = x + y\r\n \r\na, b = leia_inteiro\r\nc = soma(a, b)\r\nescreva \"{a} + {b} = {c}\"\r\n\r\nfatorial(n: Inteiro)\r\n var f = 1\r\n para i de 2 até n faça\r\n f := f * i\r\n fim\r\n f\r\nfim\r\n\r\na = leia_inteiro\r\nescreva \"Fatorial de {a} é {fatorial(a)}\"\r\n````\r\n\r\n## Tipos\r\n\r\n### Número (Inteiro e Real)\r\n````python\r\n12345.678.inteiro # 12345\r\n12345.678.arredonde # 12346\r\n12345.678.arredonde(2) # 12345.68\r\n12345.texto # \"12345\"\r\n12345 formato \"%8d\" # \" 12345\"\r\n123.45 formato \"%.1f\" # \"123.4\"\r\n````\r\n\r\n### Texto\r\n````python\r\n\"123\".inteiro # 123\r\n\"12abc3\".inteiro # 12\r\n\"abc\".inteiro # 0\r\n\r\n\"12.3\".real # 12.3\r\n\"12a.3\".real # 12.0\r\n\"abc\".real # 0.0\r\n\r\n\"abc\".tamanho # 3\r\n\"abc\".posição('b') # 2\r\n\"abc\".posição('d') # 0\r\n\"abc\".contém('a') # verdadeiro\r\n\"abc\".contém('d') # falso\r\n\r\n\"Abc\".maiúsculo # \"ABC\"\r\n\"Abc\".minúsculo # \"abc\"\r\n\"Abc\".inverta # \"cbA\"\r\n\r\n\"Isto é um texto\".divida # [\"Isto\", \"é\", \"um\", \"texto\"]\r\n\"Isto é um texto\".divida(\"t\") # [\"Is\", \"o é um \", \"ex\", \"o\"]\r\n\"Isto é um texto\".lista # [\"I\", \"s\", \"t\", \"o\", \" \", \"é\", \" \", \"u\", \"m\", \" \", \"t\", \"e\", \"x\", \"t\", \"o\"]\r\n\r\n\"abc\".cabeça # 'a'\r\n\"abc\".cauda # \"bc\"\r\n\"abc\".último # 'c'\r\n\"abcde\".pegue(3) # \"abc\"\r\n\"abcde\".passe(3) # \"de\"\r\n\r\n\"abcb\".selecione(letra => letra<>'c') # \"abb\"\r\n\"abcb\".passe_enquanto(letra => letra<>'c') # \"cb\"\r\n\"abcb\".pegue_enquanto(letra => letra<'c') # \"ab\"\r\n````\r\n\r\n### Lista\r\n````python\r\n[2, 4, 6, 8, 10] # lista literal\r\n2 :: [4, 6, 8, 10] # [2, 4, 6, 8, 10]\r\n[2, 4, 6, 8, 10].tamanho # 5\r\n[2, 4, 6, 8, 10].cabeça # 2\r\n[2, 4, 6, 8, 10].cauda # [4, 6, 8, 10]\r\n[2, 4, 6, 8, 10].último # 10\r\n[2, 4, 6, 8, 10].pegue(2) # [2, 4]\r\n[2, 4, 6, 8, 10].passe(2) # [6, 8, 10]\r\n\r\n\r\n[2, 4, 6, 8, 10].inverta # [10, 8, 6, 4, 2]\r\n[2, 6, 8, 10, 4].ordene # [2, 4, 6, 8, 10]\r\n[2, 4, 6] + [8, 10] # [2, 4, 6, 8, 10]\r\n[2, 4, 6].junte # \"246\"\r\n[2, 4, 6].junte(\", \") # \"2, 4, 6\"\r\n[2, 4, 6].junte(\"[\", \", \", \"]\") # \"[2, 4, 6]\"\r\n\r\na = [2, 4, 6, 8, 10]\r\na[3] # 6\r\na.posição(6) # 3\r\na.posição(12) # 0\r\na.contém(6) # verdadeiro\r\na.contém(12) # falso\r\na.remova(4) # [2, 4, 6, 10]\r\na.insira(3,5) # [2, 4, 5, 6, 8, 10]\r\n\r\nLista.imutável(5, 0) # [0, 0, 0, 0, 0]\r\nLista.vazia[Inteiro] # [] - Lista vazia de inteiros\r\n\r\n# Matrizes e Cubos\r\na = [[1, 2], [3, 4]] # Matriz 2x2\r\na[2] # [3, 4]\r\na[2][1] # 3\r\nb = Matriz.imutável(2, 2, 0) # b == [[0, 0], [0, 0]]\r\nc = Cubo.imutável(2, 2, 2, \"-\") # c == [[[\"-\", \"-\"],[\"-\", \"-\"]],[[\"-\", \"-\"],[\"-\", \"-\"]]] \r\nc[1][2][1] # \"-\"\r\n\r\n# Listas mutáveis\r\na = Lista.mutável(5, 0) # [0, 0, 0, 0, 0].mutável\r\na[3] := 5 # a == [0, 0, 5, 0, 0].mutável\r\n \r\n# Funções de alta-ordem\r\n[2, 4, 6, 8, 10].selecione(n => n mod 4 == 0) # [4, 8]\r\n[2, 4, 6, 8, 10].mapeie(n => n div 2) # [1, 2, 3, 4, 5]\r\n[2, 4, 6]. injete(0)((a,b) => a + b) # 0 + 2 + 4 + 6 == 12\r\n[2, 4, 6]. injete((a,b) => a + b) # 2 + 4 + 6 == 12\r\n[2, 4, 6, 2, 4].pegue_enquanto(n => n < 6) # [2, 4]\r\n[2, 4, 6, 2, 4].passe_enquanto(n => n < 6) # [6, 2, 4]\r\n````\r\n\r\n### Tupla\r\n````python\r\nt = (2015, \"potigol\", 1.0) # Tupla do tipo (Inteiro, Texto, Real\r\nt.primeiro # 2015\r\nt.segundo # \"potigol\"\r\nt.terceiro # 1.0\r\n````\r\n\r\n## Funções Matemática\r\n````python\r\nPI\r\nsen(3.14)\r\ncos(3.14)\r\ntg(1)\r\narcsen(1)\r\narccos(1)\r\narctg(1)\r\n\r\nabs(-2.4) # 2.4\r\nraiz(9) # 3.0\r\nlog(2)\r\nlog10(2)\r\n\r\naleatório() # número aleatório entre 0 e 1\r\naleatório(10) # número aleatório entre 1 e 10\r\naleatório(1, 6) # número aleatório entre 1 e 6\r\naleatório([2, 4, 6, 8, 10]) # número aleatório pertencente à lista [2, 4, 6, 8, 10]\r\n````\r\n\r\n\r\n## Programação Funcional\r\n\r\n### Casamento de Padrões\r\n````python\r\n# QuickSort\r\nquicksort(num: Lista[Inteiro]): Lista[Inteiro] = \r\n escolha num\r\n caso [] => []\r\n caso pivo::resto => \r\n menores = resto.filtre( _ <= pivo )\r\n maiores = resto.filtre( _ > pivo )\r\n quicksort(menores) + pivo::quicksort(maiores)\r\n fim\r\n\r\nescreva \"Digite alguns números separados por espaços\"\r\nnumeros = leia_inteiros(\" \")\r\nescreva \"Os números ordenados:\"\r\nescreva quicksort(numeros)\r\n````\r\n\r\n### Funções como valores\r\n````python\r\nnumeros = [1, 2, 3, 4, 5, 6, 7, 8]\r\npares = numeros.filtre(n => n mod 2 == 0)\r\nsoma = numeros.injete(0)((a,b) => a + b)\r\ndobro = numeros.mapeie(n => n * 2)\r\n````","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."}

0 comments on commit e000e1f

Please sign in to comment.