Teste
Recursividade - Em ciência da computação, a recursividade é a definição de uma subrotina (função ou método) que pode invocar a si mesma. Um exemplo de aplicação da recursividade pode ser encontrado nos analisadores sintáticos recursivos para linguagens de programação. A grande vantagem da recursão está na possibilidade de usar um programa de computador finito para definir, analisar ou produzir um estoque potencialmente infinito de sentenças, designs ou outros dados.
Polimorfismo - é um código que pode ser aplicado à várias classes de objetos.
Usabilidade - - Permite avaliar a qualidade de um sistema com relação a fatores que os projetistas definem como sendo prioritários ao sistema.
A programação estruturada consiste na divisão de um problema em partes, tornando a tarefa mais fácil de ser resolvida, diminuindo assim a extensão dos programas de forma que qualquer alteração poderá ser feita mais rapidamente, caso seja necessária. A cada uma dessa partes é dado o nome de módulo. A modularização é uma técnica para desenvolver algoritmos, na qual se divide o problema em partes, denominadas módulos, por meio de refinamentos sucessivos. O refinamento sucessivo nada mais é do que a redução de um problema a um conjunto de tarefas destinadas a solucioná-lo de maneira eficiente. Para cada tarefa desenvolve-se um algoritmo/programa (módulo) que poderá ser utilizado na solução de outros problemas, pois cada módulo é independente. O gerenciamento das tarefas é feito pelo algoritmos principal ou módulo principal. Esse módulo chama ou aciona os outros módulos, que deverão ser escritos por meio de funções ou procedimentos.
Exemplo 1: o algoritmo deve receber o valor do salário de um funcionário e calcular o novo salário.
ALGORITMO EXP_1
DECLARE SAL, AUM, NOVO_SAL : REAL;
AUM ← CALCULO(SAL);
NOVO_SAL ← SAL + AUM;
ESCREVA (“NOVO SALÁRIO É “, NOVO_SAL);
FIM EXP_1 SUB-ROTINA CALCULO (SAL REAL)
DECLARE PERC, VALOR :