1
resposta

substituir o código pela chamada da função troca()

Seguinte! ao final do exercício a professora propõe trocarmos o código do selectionSort.js por a chamada da função. Tenho algumas dúvidas: No selectionSort.js, não foi utilizado o decremento:

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeoutro detalhe, dentro da chamada da função devo passar os parâmetros livros e atual? Ao colocar igual da função, lista e analise, retorna um erro: Insira aqui a descrição dessa imagem para ajudar na acessibilidadeao tentar com os parâmetros = (livros, atual), o código funciona, mas não corretamente por conta do decremento provavelmente... alguém pode me ajudar com esta lógica?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Tive o mesmo problema e consegui resolver criando uma nova função troca. Nela passei três parâmetros: a lista, e os itens que queria trocar:

function selectionTroca(livros, indexMenorPreco, indexAtual) {
    //armazena o objeto de menor preço
    let objetoMenorPreco = livros[indexMenorPreco];
    //armazena o objeto que está sendo analisado
    let objetoAtual = livros[indexAtual];


    livros[indexMenorPreco] = objetoAtual; //objetoAtual vai para a posição onde estava o objetoMenorPreco
    livros[indexAtual] = objetoMenorPreco; //a lista de livros na posição atual, recebe o objetoMenorPreço
}