Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dúvida quanto ao comando return - Aula 3. Pratique resolvendo problemas do seu dia a dia

Opa, beleza?

Tive algumas dúvidas quanto a função do comando "return". No trecho de código: ''' var imc = function (altura, peso) { var imc = peso / (altura * altura); return imc; } ''' A função do return seria substituir o valor anterior da variável "imc" pelo novo valor de "imc"? Seria semelhante a um contador, como por exemplo " contador = contador++;"?

3 respostas

Não entendi como usar parte do código no fórum, pelo jeito. A citação do código não ficou formatada...

solução!

Boa noite,

Quando você cria uma função ela pode retornar valores ou não. Exemplo de uma função com retorno.

var adicao {
    var num1, num2; // duas variáveis para receber os valores
    var soma; // variável para fazer a soma dos valores

    num1 = 3;
    num2 = 6;

    soma = num1 + num2; // soma = 3 + 6, logo soma = 9

    return soma; // função retorna o valor de soma, que é 9

Quando você chamar a função "adição" ela vai retornar o valor da variável "soma" que está dentro da função.

Luan no exemplo que você deu do IMC realmente é da maneira como você falou, vamos ao exemplo:

function calculaImc (altura, peso) { 
    var imc = peso / (altura * altura); 
    return imc; 
} 

var imc = calcumaImc(2, 10);

Nesse código temos o seguinte, chamados a função passando os valores 2 e 10, altura e peso respectivamente.

Ao entrar na função ele fará as contas, ou seja,

altura * altura = 2 * 2, resultando em 4,
peso / (altura * altura) = 10 / 4, resultando em 2,5

Com o resultado obtido 2,5 o valor sera passado para a variável imc local, onde se encontra dentro da função e retornará ela, ao ser efetuado o retorno da variável com valor 2,5 ela será passada para o valor da variável IMC(fora da função), o mesmo código pode funcionar das seguintes maneiras:

function calculaImc (altura, peso) { 
    return peso / (altura * altura); 
} 

var imc = calcumaImc(2, 10);

ou

var imc = 10 / (2 * 2);     // peso / (altura * altura);

Espero ter ajudado.