Módulo 8 - Funções que valem ouro

Parâmetros e argumentos: a função que recebe

8 min de leitura · por Cesar Gargiulo, revisado pela equipe ValorFinal e GuardiaSec · Atualizado em 08/07/2026

O que você vai aprender

  • Escrever funções que recebem vários parâmetros.
  • Diferenciar parâmetro (na definição) de argumento (na chamada).
  • Respeitar a ordem dos parâmetros ao chamar a função.
  • Entender o valor padrão de um parâmetro opcional.

Receber vários dados de uma vez

No curso básico, a função apareceu como uma máquina que recebe uma entrada, faz um trabalho e devolve uma saída. Isso está certo, mas as máquinas úteis costumam ter mais de uma entrada. Uma calculadora de desconto precisa saber o preço e a porcentagem. Uma função que monta uma mensagem precisa do nome e do assunto. Para receber vários dados, a função lista vários parâmetros na sua definição, separados por vírgula: função desconto(preco, taxa). Cada parâmetro é um espaço reservado, um apelido que a função usa lá dentro para se referir ao valor que vai chegar. Enquanto a função não é chamada, preco e taxa são só nomes esperando por valores.

A diferença entre parâmetro e argumento confunde no começo, mas é simples e vale fixar. O parâmetro é o nome na definição, a etiqueta do espaço reservado. O argumento é o valor de verdade que você entrega na hora de chamar. Quando você escreve desconto(100, 10), os números 100 e 10 são os argumentos, e eles preenchem os parâmetros preco e taxa. Uma analogia: o parâmetro é o campo em branco de um formulário (nome, data de nascimento); o argumento é o que você escreve nele. O formulário define os campos uma vez; cada pessoa que o preenche fornece argumentos diferentes.

Uma caixa de máquina rotulada desconto com dois funis de entrada no topo, etiquetados preco e taxa (os parâmetros). Da chamada desconto(100, 10) descem dois valores, 100 e 10 (os argumentos), cada um caindo no funil correspondente. Da base da máquina sai o resultado 90.
Os parâmetros são os funis nomeados da função; os argumentos são os valores que você despeja neles ao chamar.

A ordem dos argumentos é sagrada

O ponto que mais gera bug com parâmetros é a ordem. Os argumentos preenchem os parâmetros na sequência em que aparecem: o primeiro argumento vai para o primeiro parâmetro, o segundo para o segundo, e assim por diante. A função não adivinha a sua intenção pelo nome nem pelo tipo; ela obedece à posição. Se a função é dividir(bolo, pessoas) e você chama dividir(4, 12) querendo dividir um bolo entre doze pessoas, mas passou o número de pessoas primeiro, a função vai dividir quatro bolos entre doze pessoas, ou pior, calcular algo sem sentido. O programa não reclama, porque os dois são números válidos; ele só faz a conta errada em silêncio. Por isso, ao chamar uma função, confira sempre a ordem que ela espera.

função desconto(preco, taxa)
  retorne preco - (preco * taxa / 100)
fim

escreva(desconto(100, 10))   // 90: preco=100, taxa=10
escreva(desconto(10, 100))   // 0: agora preco=10, taxa=100. Ordem trocada, resultado errado!

A função obedece à posição: trocar a ordem dos argumentos troca o significado deles, sem erro visível.

🎮 Jogo da aula

Siga a ordem dos parâmetros

A função recebe dois parâmetros. Encaixe os argumentos na ordem certa e escolha o que sai.

função saudacao(nome, periodo)
  retorne "Bom " + periodo + ", " + nome + "!"
fim
escreva(saudacao("Ana", "dia"))

Parâmetros com valor padrão

Muitas linguagens permitem que um parâmetro tenha um valor padrão, usado quando quem chama não fornece aquele argumento. Isso deixa a função flexível: o caso comum fica curto, e o caso especial ganha um ajuste. Pense numa função que calcula frete com um parâmetro taxa que, por padrão, vale a taxa normal. Na maioria das vezes você chama sem informar a taxa e a função usa o padrão; quando há uma promoção, você passa a taxa reduzida e ela usa a sua. O valor padrão evita repetir o valor mais comum em toda chamada e ainda documenta qual é o comportamento esperado. É um recurso pequeno que deixa as funções mais agradáveis de usar, e você o encontrará em quase toda linguagem moderna.

Teste rápido

Qual a diferença entre um parâmetro e um argumento?

Perguntas frequentes

Qual a diferença prática entre parâmetro e argumento?
Parâmetro é o nome na definição da função, o espaço reservado (preco). Argumento é o valor que você passa ao chamar (100). Na prática, você define os parâmetros uma vez, ao escrever a função, e fornece argumentos diferentes a cada chamada. Muita gente usa os termos como sinônimos, mas conhecer a diferença ajuda a ler documentação.
O que acontece se eu trocar a ordem dos argumentos?
A função encaixa cada argumento no parâmetro da mesma posição, então trocar a ordem troca o significado. Se os dois são números, o programa não acusa erro, só calcula errado em silêncio. Por isso é importante conferir a ordem que a função espera antes de chamá-la.
Quantos parâmetros uma função pode ter?
Tecnicamente vários, mas o bom senso pede moderação. Funções com muitos parâmetros ficam difíceis de chamar e de lembrar a ordem. Quando uma função pede seis ou sete dados, costuma ser sinal de que ela faz coisas demais e poderia ser dividida, ou de que os dados deveriam vir agrupados numa estrutura.
O que é um valor padrão de parâmetro?
É um valor que o parâmetro assume quando quem chama não passa aquele argumento. Deixa a função flexível: o caso comum usa o padrão e fica curto; o caso especial passa um valor próprio. Nem toda linguagem oferece do mesmo jeito, mas o conceito é comum e útil.
Posso passar uma lista ou dicionário como argumento?
Pode. O argumento pode ser qualquer valor: número, texto, lista, dicionário, conjunto. Uma função que calcula a média recebe uma lista de notas como argumento; uma que formata um cadastro recebe um dicionário. Passar estruturas para funções é o normal em programas de verdade.
O nome do argumento precisa ser igual ao do parâmetro?
Não. O que importa é a posição, não o nome. Você pode ter uma variável chamada valor e passá-la para um parâmetro chamado preco; a função só se importa com o valor que chega, não com o nome de fora. Dentro da função, o dado é conhecido pelo nome do parâmetro.

Fontes

Seu progresso fica salvo neste aparelho. Assinantes sincronizam entre os aparelhos.