Skip to content

Linguagem

ricardoborges edited this page May 21, 2012 · 5 revisions

Função Principal

A função "principal", como pode-se imaginar, é o ponto de entrada de um programa. O runtime do NPortugol irá pesquisar por esta função quando não especificada nenhuma outra.

funcao principal()  

fim

Para uma linguagem mais legível e simplificada, o NPortugol adotou algumas características diferentes da maioria das sintaxes de pseudo-código utilizadas. Por exemplo: Em muitas situações as quebras de linhas podem ser dispensáveis. Esta é uma função válida:

funcao soma(a, b) retorne a + b fim

Outra característica destacável está na definição de blocos sem utilizar o comando "inicio", sendo este implícito na sentença. Exemplo:

se x > 0 entao
   retorne x
fim

Também diferentemente do Portugol convencional, todas as sentenças são finalizadas pelo comando "fim". Evitando assim a multiplicação de "fim-se", "fim-para", e suas variações...


Variáveis

Comando: "variavel nome (, nome)*"

Os tipos das variáveis são identificados pelo runtime em tempo de execução.

funcao principal()
    variavel nome
    variavel total
    nome = leia()
fim

funcao principal()
    variavel nome, x, y
    nome = "Git"
    x = 10
fim

Condicional

Comando: "se expressão sentenças fim"

Comando: "se expressão sentenças senao sentenças fim"

funcao igual(x, y)
    se x == y retorne verdade fim 

    retorne falso
fim

funcao maior(x, y)
    se x > y 
       retorne verdade
    senao 
       retorne falso
    fim
fim             

Repetição

Comando: "para atribuição ate valor sentenças fim"

Comando: "para atribuição ate valor dec sentenças fim"

Para repetições decrescente, utilize o comando "dec".

funcao principal()
    variavel i
    para i = 0 ate 10
       imprima(i)
    fim
fim

funcao principal()
    variavel i
    para i = 10 ate 0 dec
       imprima(i)
    fim
fim

Vetores

A declaração de um vetor é a mesma de uma variável qualquer.

funcao criaVetor()
    variavel v
    v[0] = "Olá"
    imprima(v[0])
fim

Para inicialização rápida de uma sequência numérica:

v = [0 .. 100]

Para inicialização rápida de um conjunto de elementos:

v = {2, 4, 5, 8, 0, 10}
v = {"Azul", "Verde"}

Expressões

As expressões utilizam os símbolos comuns + - * / além de permitir chamadas de funções.

funcao calc(x, y, z, w)
    x = FazAlgo(y) * FazAlgo(z)
    w = x + (z - y) * 100 
    retorne w
fim
Clone this wiki locally