6
respostas

Não consegui entender o exercício "Agora quero ver"

Gente, pelo amor de Deus. Estava tudo muito bem, mas esse exercício do "agora quero ver" deu nó em minha cabeça. Essa merece um vídeo explicando pq lendo. Tá difícil.

6 respostas

Eu tava quase em desespero ate vim aqui no fórum e perceber que não fui a unica! Voltei varios exercicios pq eu não queria ir passar de modulo com essa duvida. De certa forma agora to mais "tranquila", vou seguir e ver se ele explica nas próximas aulas.

Minha cabeça bugou tb, não entendi nada também gente!

Um amigo do curso me ajudou. Vou tentar explicar aqui para vocês.

Se observar a var resultado é o nome e sobrenome como ta pedindo na função C que seria Flavio Almeida porem ainda na função C pede pra gente retornar a função B que tem as duas @ dentro das aspas então ficaria @Fabio Almeida@ porem ainda no mesmo retorno diz que a gente precisa da função A mais o sobrenome, então se a gente subir lá na função A ela está nos dizendo que tem que ser dentro de parênteses: function a (texto) foque nisso pq pra mim foi o diferencial, ja que minha principal duvida era porque o Almeida estava entre parênteses.

pq veja se não tivesse o parênteses lá em cima ficaria apenas @Fabio Almeida, mas a função A diz que tem que ser entre parênteses então fica @Fabio (Almeida)@

Eu não sei se consegui explicar por texto mas acreditem é mais fácil do que aparenta - talvez a gente precisaria de uma explicação melhor do professor pq foram muitas pessoas com a mesma duvida e eu só consegui pq meu colega de curso detalhou quase como se fosse pra uma criança rs.

Oi pessoal :)

Vejam se ajuda, vamos analisar a partir das funções:

Função A:

function a(texto) {
        return "(" + texto + ")";
    }

Função B:

    function b(texto) {
        return "@" + texto + "@";
    }

Função C:

    function c(nome, sobrenome) {
        return b(nome + " " + a(sobrenome));
    }

Temos que ler a seguinte variável:

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

Vamos começar a interpretar:

  • var resultado = c
  • Vamos começar a ler a partir da função C
  • Função C tem nome(Flávio) e sobrenome(Almeida), mas mas ela retorna para a função B em return b
  • Na função B ela inicia com @ + texto + @
  • Lemos assim: @ + (nome + " " + a(sobrenome)) + @

Ficaria: @ + Flávio + "espaço" = @Flávio

  • Depois ela retorna para a função A em a (sobrenome)
  • Na função A temos: "(" + texto + ")" = (sobrenome)
  • Lemos assim: (Almeida)

Até agora temos: @ + Flávio + "espaço" + "(" + Almeida + ")" = @Flávio (Almeida)

  • Com isso, encerramos a função A e temos que retornar para a função B, o final da função B é o @

Temos o resulado: @ + Flávio + "espaço" + "(" + Almeida + ")" + @ = @Flávio (Almeida)@

Espero ter ajudado :)

Agora deu uma clareada @pamela. Muito Obrigada!

Boa noite!

Na dúvida, façam como eu, escrevam o passo-a-passo no papel, instrução por instrução, até o resultado no papel, como se fosse o JavaScript lendo o nosso código. Mas dá pra fazer mentalmente também.

Lembrem-se sempre que o programa sempre inicia do topo para baixo, ou inglesando Top Down. :-)

O resto nossos amigos explicaram acima.

Até o ponto desta aula não tivemos aula com fluxograma, mas seria mais ou menos isso.

Sucesso à todos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software