aula 104

Como criar um procedimento com parâmetro em Portugol?

Nesta aula vamos aprender a criar nosso primeiro módulo de programa (procedimento, sub-rotina) com a passagem de parâmetros, um procedimento com parâmetro para imprimir na tela uma mensagem de boas vindas e o nome do usuário. Depois de criado, o procedimento pode ser utilizado diversas vezes sem a necessidade de rescrever código.

Em diversas situações nossos procedimentos / funções precisarão receber dados, informações para realizar alguma ação.

Imagine, por exemplo, que lemos o nome do usuário dentro do procedimento inicio e, na mensagem de boas vindas, desejamos imprimir também o nome do usuário. Há um problema aí. A variável que armazena o nome digitado pelo usuário está declarada dentro do procedimento inicio, logo, ela apenas “existe” ali dentro. Não é possível acessa-la dentro do procedimento menssagemBoasVindas.

Para resolver esse problema precisamos fazer o que é chamado de passagem de parâmetros, ou seja, precisamos passar para nosso procedimento o valor de alguma variável, neste caso, o nome do usuário.

Como fazer uma passagem de parâmetro?

A primeira alteração que precisamos fazer é na assinatura do nosso procedimento. A assinatura do procedimento é a primeira linha, que possui o nome seguido de um par de parênteses, como a seguir:

// Assinatura do procedimento mensagemBoasVindas
funcao menssagemBoasVindas()

Perceba que o par de parênteses está vazio. É dentro desse par de parênteses que precisamos dizer o que nosso procedimento irá receber como parâmetro. Um procedimento / função pode receber vários parâmetros separados por vírgula. Para cada procedimento é necessário dizer o tipo e dar um nome, assim:

// Assinatura do procedimento mensagemBoasVindas
funcao menssagemBoasVindas(cadeia nome)

Ao chamar nosso procedimento em inicio, agora precisamos passar o valor de uma variável do tipo cadeia. O computador irá copiar esse valor para uma região de memória que poderá ser acessado com o nome dado dentro do par de parênteses, assim:

	funcao menssagemBoasVindas(cadeia nome){
		escreva("\n\t-----------------------------------------\n")
		escreva("\t\t\tOlá ", nome,"\n\t   Seja bem vindo ao nosso sistema!")
		escreva("\n\t-----------------------------------------\n\n")
	}

Para fazer a passagem de um parâmetro para nosso procedimento precisamos apenas informar, dentro do par de parênteses, o nome da variável cujo valor precisamos enviar. Perceba que é exatamente igual quando fazemos a leitura de valores a partir do teclado, informando o nome das variáveis onde será salvo os valores lidos (leia(variavelA, variavelB, variavelC)).

A seguir apresento o código em Portugol que utiliza nosso procedimento duas vezes. A primeira vez para o nome de usuário José e a segunda vez para o nome de usuário lido a partir do teclado.

programa{
	
	funcao menssagemBoasVindas(cadeia nome){
		escreva("\n\t-----------------------------------------\n")
		escreva("\t\t\tOlá ", nome,"\n\t   Seja bem vindo ao nosso sistema!")
		escreva("\n\t-----------------------------------------\n\n")
	}

	funcao inicio(){
		cadeia nome = "José"

		menssagemBoasVindas(nome)

		escreva("Digite seu nome: ")
		leia(nome)
		menssagemBoasVindas(nome)
	}
}

Deixe um comentário

catorze − 11 =

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.