Até agora temos desenvolvido programas que englobam a lógica completa do
algoritmo para a solução de um determinado problema. É comum, em programação,
decompor a lógica de programas complexos em programas menores e, depois, juntá-los
para compor o programa final. Essa técnica de programação é denominada
programação modular.
A programação modular consiste num método para facilitar a construção de
grandes programas, através de sua divisão em pequenas etapas, que são os módulos ou
rotinas e para possibilitar o reaproveitamento de código, já que podemos utilizar um
módulo quantas vezes for necessário, eliminando assim a necessidade de escrever o
mesmo código do programa em situações repetitivas. Outra importância da
modularização é que ela permite que diferentes programadores trabalhem
simultaneamente na solução de um mesmo problema, através da codificação separada
dos diferentes módulos.
A modularização, em Pascal, pode ser feita através de procedimentos
(procedures) e funções (functions). Isso é feito associando-se um nome a uma
seqüência de comandos através do que chamamos Declaração do Procedimento ou da
Função. Pode-se, então, usar o nome do procedimento ou da função dentro do corpo do
programa, sempre que desejarmos que o seu bloco de comandos seja executado, isso é o
que chamamos de Chamada do Procedimento ou da Função.
Além das rotinas desenvolvidas pelo usuário, existe na linguagem Pascal, um
conjunto de rotinas embutidas. Este tipo de rotina embutida é conhecido pelo nome de
unidade (do inglês, unit).
Para entender Melhor sobre Unit veja nesse link Pascal - Units(bibliotecas), uses.
Ex.:
Procedimento
Program fun_and_pro; var num :integer; {variável global} procedure par(n :integer); {"n" variavel local recebe como parametro o valor de "num"} Begin if (n mod 2 = 0) then Writeln('Numero Par') else Writeln('Numero Impar'); End; Begin Write ('Informe Valor: '); readln(num); par(num); End.
Função
Program fun_and_pro; var num :integer; {variável global} function par(n :integer):boolean; {retorna um valor booleano} Begin if (n mod 2 = 0) then par:=true else par:=false; End; Begin Write ('Informe Valor: '); readln(num); if par(num)=true then Writeln('Numero Par') else Writeln('Numero Impar'); End.
Exercício
0 comentários:
Postar um comentário