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

Exercicio

<meta charset="UTF-8">

<script>
    function pulaLinha() {

        document.write("<br>");
    }

    function mostra(frase) {
        document.write(frase);
        pulaLinha();
    }

    function a(texto) {

        return "(" + texto + ")";
    }

    function b(texto) {

        return "@" + texto + "@";
    }

    function c(nome, sobrenome) {

        return b(nome + " " + a(sobrenome));

    }

    var resultado = c("Flávio", "Almeida");

    mostra(resultado);

</script>


`

Pessoal eu juro que não entendi, porquê o resultado exibido é @Flávio (Almeida)@ ?

4 respostas

Oi Talita confuso né? kkk

 function c(nome, sobrenome) {

        return b(nome + " " + a(sobrenome));

    }

Ta vendo a função c? que tem 2 parametros? nome e sobrenome certo? depois dentro da função tem o return, presta atenção no retorno está retornando a função b, viu? Então ira retornar a função b que seria isso.

function b(texto) {

        return "@" + texto + "@";
    }

olha o retorno da função b, esta retornando "@" + texto + "@"; correto? por isso o no retorno está @Flavio@

Depois volta na função c, novamente olha o retorno dela? está também chamando a função a correto?

return b(nome + " " + a(sobrenome));

agora olha a função a.

 function a(texto) {

        return "(" + texto + ")";
    }

a função a o retorno dela é "(" + texto + ")"; correto?

Então oque temos aaqui?

var resultado = c("Flávio", "Almeida");

temos uma variavel resultado = que recebe a função c com nome e sobrenome. Novamente o retorno da função c ira retornar a funçao b e a correto? Quando colocou a nome "Flávio" o java ficou assim

@Flávio@

Ficou assim por causa da funçao b correto? e depois o sobronome ele chamou a função a ficando assim.

@Flávio(Ameida)@
solução!

@_@ Uauu agora entendi!! rsrs Obrigada!!

kkkkkk bons estudos e um bom final de semana.

obrigada!!