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?
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?
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
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.png
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