Referência de pseudolinguagem · PSeInt

PSeInt

Esta página organiza as construções de pseudocódigo documentadas pelo PSeInt: estrutura de algoritmo, dados, expressões, controle de fluxo e subprogramas. Os perfis do PSeInt podem flexibilizar algumas regras de escrita; confira o perfil selecionado no ambiente de referência.

Pseudolinguagem PSeIntFoco Algoritmos em pseudocódigo

01 · Visão geral

Sobre PSeInt

PSeInt é um ambiente educacional para escrever e executar algoritmos em pseudocódigo. A referência oficial descreve uma pseudolinguagem com instruções em espanhol e permite configurar perfis com regras mais flexíveis ou mais estritas.

O ambiente também pode apresentar algoritmos como diagramas de fluxo. Essa representação ajuda a acompanhar a sequência, as decisões e as repetições do algoritmo, sem substituir a leitura das instruções.

02 · Organização

Estrutura do algoritmo

O formato documentado envolve as instruções entre Proceso e FinProceso. Em algumas versões e perfis, Algoritmo e FinAlgoritmo também são aceitos. A escrita pode exigir ponto e vírgula ou permitir a separação por linhas, conforme o perfil.

Proceso Saludo
    Definir nombre Como Caracter
    Escribir "¿Cómo te llamas?"
    Leer nombre
    Escribir "Hola, ", nombre
FinProceso

Os blocos podem ser aninhados, mas cada estrutura precisa terminar antes de a estrutura que a contém ser encerrada.

03 · Dados

Variáveis, tipos e atribuição

Uma declaração explícita usa Definir nombre Como Tipo. A atribuição calcula a expressão à direita e armazena o resultado na variável à esquerda; os tipos precisam ser compatíveis.

TipoUso
EnteroNúmeros inteiros.
RealNúmeros com parte decimal.
CaracterCaracteres e textos.
LogicoVerdadero ou Falso.
Definir edad Como Entero
Definir promedio Como Real
Definir nombre Como Caracter
Definir aprobado Como Logico

edad <- 16
promedio <- 8.25
nombre <- "Ana"
aprobado <- Verdadero

Os nomes começam com uma letra, podem continuar com letras ou números e não podem coincidir com palavras reservadas. Comentários começam com // e podem aparecer depois de uma instrução ou em uma linha própria.

04 · Expressões

Operadores e funções

CategoriaFormasSignificado
Aritméticos+ - * / ^ % MODOperações, potência e resto da divisão inteira.
Relacionais> < = <= >=Comparações entre valores.
Lógicos& Y | O ~ NOConjunção, disjunção e negação.

Parênteses podem alterar a ordem usual dos cálculos. A referência também lista funções integradas como RC, ABS, LN, EXP, SEN, COS, ATAN, TRUNC, REDON e AZAR.

area <- base * altura / 2
resto <- numero MOD 2
es_par <- resto = 0
raiz <- RC(numero)

05 · Interação

Entrada e saída

Leer recebe um ou mais valores e os atribui às variáveis indicadas. Escribir mostra os valores de uma ou mais expressões. Alguns perfis incluem uma forma de escrita sem quebra de linha, como Escribir Sin Saltar.

Escribir "Digite dois números:"
Leer a, b
suma <- a + b
Escribir "Soma: ", suma

06 · Decisões

Condições e seleção

Si avalia uma condição; Entonces introduz o bloco verdadeiro e Sino o alternativo. A seleção múltipla usa Segun e pode incluir uma opção padrão em De Otro Modo.

Si nota >= 7 Entonces
    Escribir "Aprobado"
Sino
    Escribir "Sigue practicando"
FinSi

Segun opcion Hacer
    1:
        Escribir "Iniciar"
    2:
        Escribir "Ayuda"
    De Otro Modo:
        Escribir "Opción no válida"
FinSegun

07 · Repetição

Laços

Mientras verifica a condição antes de cada execução e pode não executar o corpo nenhuma vez. Repetir executa o corpo primeiro e verifica a condição em Hasta Que, portanto roda ao menos uma vez. Para percorre valores de início a fim e aceita Con Paso.

Para i <- 1 Hasta 5 Con Paso 1 Hacer
    Escribir i
FinPara

Repetir
    Leer clave
Hasta Que clave = "fin"

Garanta que a condição de saída possa ser alcançada; caso contrário, o laço continua indefinidamente.

08 · Coleções

Vetores e matrizes

Dimension declara um vetor ou uma matriz. A grafia da dimensão e o índice inicial dependem do perfil ativo; os limites não devem ser presumidos. Neste exemplo, o vetor tem cinco posições numeradas de 0 a 4:

Definir notas Como Real
Dimension notas[5]

Para i <- 0 Hasta 4 Hacer
    Leer notas[i]
FinPara

Escribir "Primeira nota: ", notas[0]

Uma segunda dimensão cria uma matriz e exige um índice por dimensão. Antes de acessar uma posição, confira o tamanho e os limites definidos pelo perfil. Os arreglos também podem ser recebidos por subprocessos conforme a assinatura aceita pelo perfil.

09 · Reuso

Subprocessos

SubProceso define uma rotina reutilizável. Quando há retorno, o cabeçalho nomeia a variável que recebe o resultado; sem ela, a rotina executa ações sem produzir valor. A chamada usa o nome do subprocesso e os argumentos entre parênteses. Parâmetros podem ser de entrada ou, quando o perfil aceita essa forma, por referência para devolver alterações ao chamador.

SubProceso resultado <- Doble(numero)
    resultado <- numero * 2
FinSubProceso

Proceso Principal
    Escribir Doble(6)
FinProceso

As variáveis locais ficam restritas à rotina. A referência inclui chamadas recursivas, como calcular potência, e passagem de vetores como argumento. Prefira parâmetros por valor para cálculos que não precisam alterar a variável original; use passagem por referência apenas quando a rotina realmente tiver de devolver uma alteração.

10 · Exemplo integrado

Média e resultado

Proceso Promedio
    Definir a, b, c, media Como Real
    Escribir "Digite três notas:"
    Leer a, b, c
    media <- (a + b + c) / 3
    Si media >= 7 Entonces
        Escribir "Aprobado: ", media
    Sino
        Escribir "Sigue practicando: ", media
    FinSi
FinProceso

11 · Biblioteca matemática

Funções integradas

As funções da tabela fazem parte da referência básica publicada pelo PSeInt. Os argumentos aparecem entre parênteses; o resultado pode ser atribuído, exibido ou combinado com outra expressão.

FormaResultado
RC(x)Raiz quadrada.
ABS(x)Valor absoluto.
LN(x), EXP(x)Logaritmo natural e função exponencial.
SEN(x), COS(x), ATAN(x)Funções trigonométricas.
TRUNC(x), REDON(x)Parte inteira e inteiro mais próximo.
AZAR(n)Inteiro aleatório de 0 até n - 1.
Longitud(texto)Quantidade de caracteres.
SubCadena(texto, inicio, fim)Trecho entre as posições indicadas.
Concatenar(a, b)Une duas cadeias de caracteres.
Mayusculas(texto), Minusculas(texto)Converte as letras para maiúsculas ou minúsculas.
Definir raio, area Como Real
raio <- 3
area <- 3.14159 * raio ^ 2
Escrever "Área: ", REDON(area)
Escrever "Dado: ", AZAR(6) + 1
Definir frase, minuscula Como Caracter
frase <- "Olá, mundo!"
minuscula <- Minusculas(frase)
Escribir "Caracteres: ", Longitud(minuscula)
Escribir "Início: ", SubCadena(minuscula, 1, 3)
Escribir Concatenar("Texto: ", minuscula)

Confira o domínio de cada função matemática. Operações de cadeia de caracteres dependem do perfil que as habilita; este exemplo usa índices a partir de 1, então ajuste SubCadena conforme o perfil ativo.

12 · Variantes de escrita

Perfis de configuração do PSeInt

O perfil selecionado reúne as opções de escrita que o PSeInt aceita. A documentação oficial apresenta Estricto e Flexible como exemplos para mostrar essas diferenças; o programa também oferece perfis predefinidos para instituições. Os exemplos abaixo ilustram configurações, não uma lista universal de regras para todas as turmas.

AspectoEstrictoFlexible
EstruturaProceso / FinProceso.Algoritmo / FinAlgoritmo.
Declaração de dadosDeclara variáveis com Definir e seus tipos.Pode inferir tipos a partir do uso das variáveis.
Separação de instruçõesOs exemplos usam ponto e vírgula.Os exemplos separam instruções por linha.
Percurso de coleçõesPara I <- ... acessa cada posição pelo índice.Para Cada Elemento de Lista percorre os elementos.
CondiçõesUsa comparações como Elemento > ValMayor.Também admite formas descritivas como Es Mayor Que e Es Par.
Dimensão de vetoresO exemplo reserva Dimension Lista[100].O exemplo usa Dimension Lista[Cant].

Os nomes das opções, os limites de vetores e outras construções dependem do perfil realmente selecionado. Para exercícios de uma turma, siga o perfil indicado pelo professor ou pelo material didático.

Perfis institucionais

O PSeInt pode disponibilizar perfis preparados para universidades, faculdades e cursos. Eles reúnem em um arquivo as opções escolhidas para uma disciplina; a disponibilidade depende da lista incluída na distribuição ou fornecida pela instituição.

Criar, salvar e carregar um perfil

  1. No PSeInt, abra Configurar → Opciones del Lenguaje (perfiles) (Configurar → Opções da Linguagem [perfis]).
  2. Na janela de seleção, escolha Personalizar.
  3. Ajuste as opções conforme a convenção que a turma precisa usar.
  4. Use o botão com o ícone de disquete para salvar o perfil em um arquivo; escolha onde guardá-lo, informe uma descrição e dê ao arquivo um nome que identifique o perfil.
  5. Para usar um perfil compartilhado, abra novamente a seleção de perfis, escolha Cargar (Carregar) e selecione o arquivo recebido.

Depois de carregar o perfil, confirme que ele aparece selecionado antes de escrever ou executar o algoritmo. Compartilhar o mesmo arquivo ajuda a manter as mesmas regras nos exemplos da turma.

13 · Resolução de problemas

Testes e acompanhamento

Antes de executar, identifique os dados de entrada, o resultado esperado e as condições que alteram o percurso. Depois, experimente valores simples cujo resultado você consiga calcular à parte.

  • Teste o caso mais comum e valores de limite, como zero, um único elemento e a maior entrada prevista.
  • Em cada repetição, acompanhe a condição, o contador e as variáveis que mudam.
  • Nos vetores, confira se cada índice está dentro da dimensão declarada.
  • Em uma função, compare os argumentos com o valor retornado e examine cada caminho de retorno.

O interpretador permite acompanhar a execução passo a passo e compará-la com o diagrama de fluxo. A trilha ajuda a encontrar o momento em que uma variável deixa de ter o valor esperado; ela não substitui a escolha de bons casos de teste.

14 · Leitura adicional

Referências

Volte ao Manual do Potoo IDE

Consulte as demais referências e informações do projeto.

Abrir o Manual