Sunteți pe pagina 1din 6

Procedimentos e Funções

Procedimentos – são estruturas que agrupam um conjunto de comandos,


que são executados quando o procedimento é chamado.

Funções – são procedimentos que retornam um valor ao seu término.

 Evitam que os blocos do programa fiquem grandes demais e mais difíceis


de ler e entender.

 Ajudam a organizar o programa.

 Permitem reaproveitamento de códigos construídos anteriormente.

 Evitam repetição de trechos de códigos, minimizando erros e facilitando


alterações.

Variáveis locais e variáveis globais

As variáveis definidas na “área de definição de variáveis” de um


algoritmo/programa, são consideradas globais.

Antes do Main()

Elas são conhecidas em todas as partes e seu valor também pode ser
verificado ou incluso em operações aritméticas.

Mas devido ao fato de que, ocasionalmente, uma variável é utilizada em


apenas uma função,
Ex : Você define a var Desc só para ajudar a calcular o salário Final.

Não tem pq deixar sua definição na área das globais.

Podemos fazer isto logo após a declaração da função, definindo nela , as


que serão usadas somente na função em questão.

A estas variáveis, declaradas na parte interna de uma função, damos o


nome de “variáveis locais”.
Nenhuma relação existe entre uma variável local e uma global, ainda que
definidas com o mesmo nome.
Evite definir uma variável local com o mesmo nome de uma global, a fim
de evitar confusão .
O programa não faz confusão, porém o programador pode facilmente se
confundir.

Dentro de uma função as variáveis locais tem preferência sobre as globais

Vale lembrar ainda, que uma variável local, existe somente dentro da
função que a declarou.

Mesmo que uma função seja chamada dentro de outra que possui variáveis
locais, estas não existirão dentro da função chamada, ou seja, o valor destas
variáveis não poderá ser utilizado.

A grande vantagem das variáveis locais é que o espaço de


armazenamento destas na memória, só é efetivamente ocupado quando a função
é executada.

Ao final da execução, esse espaço é liberado para a memória livre. Com isso, os
programas ficam mais “leves”, ou seja, ocupam menos memória.
Passagem de Parâmetros
 - A passagem de parâmetros possibilita o reaproveitamento de código
 - O programa fica mais limpo e fácil de entender.
o Ela nada mais é do que a chamada a uma função, estabelecendo
valores iniciais dos dados que este subprograma manipula.
o otinas com passagem de parâmetros devem ser escritas sempre
que um determinado “bloco de código” (parte de um programa fonte)
se repita.
 Quando uma função é definida para receber parâmetros, a chamada
destes deve obrigatoriamente ser acompanhada dos valores dos
argumentos,
o Passar na mesma ordem e na mesma quantidade e seqüência em
que foram definidos.
 Os parâmetros dentro de uma função são considerados variáveis locais, ou
seja, só existem dentro dele próprio.
 Os parâmetros não necessitam não necessitam ser definidos como
variáveis locais, porque a própria definição ao lado do nome da função se
encarrega disso.
 Os parâmetros servem ainda para a comunicação entre diversas partes do
programa.
 Isto significa que os dados locais de uma função podem ser passados a
outra, desde que enviados como parâmetros. Por este motivo e por tudo
que já foi visto, os parâmetros são também conhecidos como “parâmetros
de entrada”.
Definição
dos
#include <iostream>
parâmetros
using namespace std;
num
int dobro( int valor )
{
valor = valor*2;
// cout << "numero antes de chamar a função Dobro : " << num;
cout << " \n Valor dentro da função Dobro : " << valor; vai dar erro
} ñ reconhece
num
main()
{
int num;
cout << "Informe um numero : ";
cin >> num;

cout << "\n numero antes de chamar a função Dobro : " << num;

dobro(num);

cout << "\n numero Depois de chamar a função Dobro : " << num;

}
Retorno das funções

Funções na matemática retornam um valor. Existem códigos de programas


que são utilizados para chegar a um resultado que deve ser enviado de volta ao
ponto onde o bloco de código foi chamado.
Por exemplo, havendo a necessidade de encontrar o maior valor entre 3
números, deve-se escrever o código para solucionar o pedido.
De posse do valor correto, basta enviá-lo como resultado da função. Como
retorna um valor, na definição de uma função deve-se indicar o tipo de dado que
ela retornará.
 A expressão contida no comando return é chamado de valor de retorno da
função.
 Esse comando é sempre o último a ser executado por uma função. Nada
após ele será executado.

Parâmetros de
entrada da função
int calcula(int pA, int pB, int pC)
{
int maior;

maior = pA;
if (pB > maior) Implementação do retorno
Indica o tipo de maior = pB; da função .
if (pC > maior) Também é conhecido como
Retorno função
maior = pC; “parâmetro de saída”.
return(maior);
}
#include <iostream>
using namespace std;

int calcula(int pA, int pB, int pC)...............

main()
{ int A,B,C, MA;

cout << "Informe um 1 numero : ";


cin >> A ;
cout << "Informe um 2 numero : " ;
cin >> B ;
cout << "Informe um 3 numero : ";
cin >> C;
MA = calcula(A,B,C);

cout << "o Maior dos 3 valores : " << MA;


}

Exercícios de Funções

101) Faça um algoritmo que receba como parâmetro o salário de um funcionário


e retorne o salário reajustado em 15 % .

102) Faça um programa que contenha e use uma função para calcular o fatorial
de um número. Sua função deve receber um número inteiro como parâmetro e
retornar seu fatorial.
No programa principal você deve imprimir a seguinte mensagem: "O
fatorial de X é Y".
Obs: o programa deve ler números até que a entrada seja menor ou igual
a 0.

103) Faça um algoritmo que receba um vetor A de 10 elementos inteiros.


Usando funções com passagem de parâmetro no final deste, deverá ter sido
gerado um vetor B contendo o fatorial de cada elemento de A.
Os vetores A e B deverão ser mostrado no programa principal.
´

104) Faça uma função que recebe, por parâmetro, a altura (alt) e o sexo de uma
pessoa e retorna o seu peso ideal. Para homens, calcular o peso ideal usando
a fórmula peso ideal = 72.7 x alt - 58 e ,para mulheres, peso ideal = 62.1 x alt -
44.7.

105) Escreva uma função que recebe as 3 notas de um aluno por parâmetro e
uma letra. Se a letra for A a função calcula a média aritmética das notas do aluno,
se for P, a sua média ponderada (pesos: 5, 3 e 2) e se for H, a sua média
harmônica. A média calculada também deve retornar por parâmetro.
106) Faça uma função que verifique se um valor é perfeito ou não. Um valor é
dito perfeito quando ele é igual a soma dos seus divisores excetuando ele
próprio.
(Ex: 6 é perfeito, 6 = 1 + 2 + 3, que são seus divisores).
A função deve retornar um valor booleano. (0 ou 1)

107) Escreva uma função que recebe, por parâmetro, dois valores X e Z
e calcula e retorna Xz .

108) Faça um programa que aloque uma matriz quadrada


dinamicamente. Alem disso, seu programa deve ter as seguintes funções
disponíveis:

_ Uma função que devolve o maior dos elementos contidos na matriz;


_ Uma função booleana que identifica se um determinado valor (passado
como parâmetro) está contido na matriz;
_ Um procedimento que recebe esta matriz e devolve os elementos
contidos em sua diagonal principal, copiados para um vetor.

109) Escreva um programa que apresente na tela quatro opções:


(a) consulta saldo (c) depósito
(b) saque (d) sair.

O saldo deve iniciar em R$ 0,00.


Você deve construir três funções (consulta, saque e deposito) que etornam
o valor do saldo. Nas operações de saque e depósito, o saldo deve ser sempre
atualizado.

Entrada : Saída
a R$ 00.00
c 20.00
a R$ 20.00

110) Escreva um programa em que manipule uma Matriz de STRING com


com dados de 10 trabalhadores de uma empresa, conforme a estrutura a
seguir:
String id;
String nome;
String sexo;

O programa deve ter as seguintes funções:


a) uma função para ler os dados dos 10 funcionários.
b) uma função que receba por referência a lista e exiba os dados
dos 10 funcionários.
c) uma função que receba, como parâmetro, um caractere
correspondente ao sexo e a lista para exibir os dados somente dos
funcionários do respectivo sexo.

S-ar putea să vă placă și