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

Algoritmo não é executado, depois de uma

Olá, não consegui entender o porque acontece esse erro no algaritmo, quando eu começo o let atual direto como 1, para que assim não precise crie uma lógica and no while igual visto na aula.insertionSort C/ alterações Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas
solução!

Motivo do erro:

Na linha 5: analise === atual (valor 1)

linha 6: while (lista[1].preco < lista[0].preco )... nesse ponto ainda é possível ter algum resultado, porém o while executa enquanto for valor 'truthy (verdadeiro)', então passa...

linha 7, 8, 9 e 10: sem erro (não retorna undefined ainda).

linha 13: analise após o decremento vale 0, logo na segunda execução é o mesmo quewhile (lista[0].preco < lista[-1].preco ), retornando então que não pode ser lido o valor de "lista[-1].preco".

Obg por me esclarecer, nem me atentei como a questao do decremento estava afetando. Obg