aula 102

Como e por que modularizar nosso programa criando funções e procedimentos?

Esta é a primeira aula e introdução ao estudo das funções e procedimentos. Modularizar nosso programa significa dividir em partes, em módulos, onde cada módulo (função ou procedimento) resolve uma pequena parte do problema. Então, vamos entender melhor como e por que modularizar nossos programas e nas próximas aulas vamos aprender como criar nossas funções e procedimentos.

Outro nome muito comum utilizado para modularização é sub-rotina. Há inclusive uma aba no Portugol Studio com exemplos de sub-rotinas, como apresentada na figura a seguir.

sub-rotinas no portugol studio
Aba sub-rotinas no Portugol Studio.

Modularização ou sub-rotinas são pequenos trechos de código que resolvem um problema bem específico. Na programação, todo problema pode ser dividido em problemas menores. Imagine o problema de identificar se uma matriz é um quadrado magico. Para resolver este problema pprecisamos resolver uma série de problemas menores, como:

  • calcular a soma de cada linha
  • calcular a soma de cada coluna
  • calcular a soma da diagonal principal
  • calcular a soma da diagonal secundária

Uma matriz 5 x 5 por exemplo possui 5 linhas e 5 colunas. Como precisamos descobrir o somatória de cada linha e de cada coluna, podemos então escrever um pequeno trecho de código para calcular o somatório de uma linha x, e outro para calcular o somatório da coluna x. Uma vez escritos, posso utilizar quantas vezes for necessário. Nas aulas seguintes faremos isso na prática.

Qual a diferença entre uma função e um procedimento?

As duas coisas, função e procedimento, possuem basicamente a mesma definição, são pequenos trechos de código que executam uma ação bem específica, ou ainda, resolvem um problema bem específico. Mas então, qual a diferença?

É simples. Imagine que vamos escrever um trecho de código para imprimir um vetor na tela. Perceba que a única ação a ser feita é imprimir os elementos do vetor na tela.

Agora, imagine que vamos escrever um trecho de código para calcular uma soma, a soma dos elementos de um vetor. Se vamos calcular uma soma, significa que precisamos do resultado, então esse resultado precisa ser retornado para quem chamou esse trecho de código.

Essa é a diferença entre função e procedimento. Uma função realização alguma ação e retorna algum valor, enquanto que um procedimento apenas realiza alguma ação, não retornando nenhum valor.

Um procedimento tem o padrão a seguir, a palavra reservada “função” seguida do identificador (nome) do procedimento.

funcao imprimirVetor(){
     // código para imprimir o vetor
}

Uma função tem o padrão a seguir, a palavra reservada “função” seguida do tipo de retorno, neste caso um número inteiro, e do identificador (nome) da função. Perceba que ao final temos a palavra reservada retorne que irá retornar o valor da variável soma.

funcao inteiro somarVetor(){
     inteiro soma
     // código para calcular a soma de um vetor.
     ...
     retorne soma
}

Não se preocupe se esses conceitos parecem abstratos demais por enquanto. Esta é apenas a primeira aula. Nas aulas seguintes veremos exemplos e escreveremos nossas funções e procedimentos.

Deixe um comentário

14 + seis =

Wagner Gaspar

Capixaba de São Gabriel da Palha, Espírito Santo. Bacharel em Ciência da Computação pela Universidade Federal do Amazonas e mestre em informática pela Universidade Federal do Espírito Santo.