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

nao esta tao claro

Conforme o exemplo abaixo : for (let j = 0; j < notasGerais[i].length; j++) { media += notasGerais[i][j]/notasGerais[i].length; }

Eu nao estou entendendo esta linha de codigo. O, (let j) se refere ao indice do indice como?

5 respostas

Oi Juliana, Tudo certo?

Vou tentar te ajudar nessa!

O for é uma opção de repetição de bloco. Ele tem três parâmetros que precisarão ser definidos no momento em que você montar seu for.

for (parametro1, parametro2, parametro3)

parametro1 será sempre a criação de uma variável que, basicamente, guaradará a condição inicial para o bloco rodar. Sendo for essa variável será sempre criada com let porque o valor dela será atualizado.

parametro2 será sempre a lógica para que o bloco do for execute. Neste seu caso, enquanto o j (você nomeou o let assim, mas poderia ser qualquer nome) for menor que o tamanho de notasGerais[i], o bloco será executado. Eu não lembro do código da aula mas pelo teu código acredito que seja um for dentro de outro for. Sendo assim esse [i] do primeiro passará para o segundo for a posição da primeira lista.

parametro3 será sempre a incrementação da sua variável de controle... Neste caso é o j.

Em resumo, o let j não se refere ao indice do indice... ele é a variável de controle do seu for.

Se mais compliquei do que ajudei, avisa aqui que tento te ajudar melhor. ;D

Se quiser colocar o código completo também, ajudará para analisarmos de forma mais ampla.

Abs!

Muito obrigada por me responder, mas ainda fica meio abistrato a logica para mim. Estou meio que deduzindo a logica (como em formas de balao), mas o conseito ate pequei.

se eu tiver uma ilustração, poderia ajudar mais, porque sou mais visual. Obrigada.

Oi Juliana, o conceito de array é baseado no conceito de matriz na matemática, onde a localização do número é de acordo com a linha e a coluna, no caso de uma array unidimensional, seria um vetor só com linha para simplificar, no caso em questão precisamos percorrer pelos dados do array. Foi usado no modelo o for clássico, que basicamente usa o conceito de iteração e incrementação, no caso foi declarado no let j = 0, o valor inicial da posição da matriz, no caso a primeira posição da nossa matriz seria 0, ou seja notasGerais[0], corresponde ao primeiro valor do nosso array "matriz", logo em seguinda nós temos a condição de parada, no caso foi usado um operador relacional, sempre que a essa afimação for verdadeira, no caso 0 < o tamanho do array que é feito usando uma propriedade do array notasGerais.length, se for verdadeira ela vai incrementar, ou seja somar mais um a j no caso ele vai ter o valor de 1, que sera a posição do segundo elemento do array, até quando esse numero for menor que o tamanho do array, quando ele for igual ou maior o loop ou iteração terminar, e então ele sai do bloco do loop continuar o fluxo do código.

notasGerais = [7, 8, 12]

notasGerais[0] -> primeiro elemento do array, correponde ao 7 notasGerais[1] -> segundo elemento do array, corresponde ao 8 notasGerais[2] -> terceiro elemento do array, corresponde ao 12

solução!

Juliana, tudo bem?

Conseguiu esclarecer a dúvida?

Preparei uma imagem para tentar te ajudar, caso ainda tenhas a dúvida.

/home/eraldo/Documents/for.pngInsira aqui a descrição dessa imagem para ajudar na acessibilidade

O conceito vai fixando com a prática... caso queira, podemos praticar mais com outros exemplos para ir fixando pra você, ok?

Espero ter ajudado!

Abs.

muito obrigada