Informática, perguntado por bismark90, 9 meses atrás

Usando funções - Filtrar produtos
Uma loja virtual permite a seus visitantes filtrar produtos pelo preço. Existe um array com os preços dos produtos. Um programador já criou uma função maisBaratosQue(valor, precos) que retorna um array com os preços dos produtos mais baratos que o valor passado como parâmetro. Outro programador já criou uma função maisCarosQue(valor, precos) que retorna um array com os preços mais caros que o valor passado como parâmetro. Chegou sua vez!


Crie uma função precosEntre(valorMenor, valorMaior, precos) que deve utilizar as funções maisBaratosQue e maisCarosQue para retornar os preços que estão entre o valorMenor e o valorMaior. Sua função deve receber então dois parâmetros:

valorMenor para representar o valor mínimo dos preços a serem listados

valorMaior para representar o valor máximo dos preços a serem listados

precos para representar um array com os preços dos produtos

Ela deve retornar um array com todos os preços entre valorMenor e valorMaior


rafaelpietra: Eu escrevi uma função diferente, porem o console do google roda tranquilamente, já o Playground não.
function precosEntre(valorMenor, valorMaior, precos) {
var todosPrecos = []
todosPrecos.push(maisCarosQue(valorMenor, precos))
todosPrecos.push(maisBaratosQue(valorMaior, precos))

return todosPrecos;

Soluções para a tarefa

Respondido por rodolfoskfly
40

Resposta:

function precosEntre(valorMenor, valorMaior, precos){

 var maisBaratos = maisBaratosQue(valorMaior, precos);

   return maisCarosQue(valorMenor, maisBaratos);

}

Explicação:


johangabriel1: cara não entendi o porque que deu certo
dreamfear: Nem eu entendi porque deu certo :(, qual é a logica?
patrikliro: poderia me explicar por que está sintaxe, qual é a logica?
lucascassiano2016: queria entender qual também qual a logica ‍♂️
WallaceWillians: Tambem estou querendo entender.
rafaelpietra: na variável maisBaratos ele forma uma array com a funçao já definida com os valores menores que o Valor maior, no caso 10. Uma vez formado, ele contém todos os números da lista pois o valor 10 é o maior. Quando ele retorna, ele já filtra os valores formados no array "maisBaratos" e fixa um valor mínimo com a função maisCarosque() e já mostra somente o intervalo requerido no exec.
Respondido por nicolefc22
4

A função para que ocorra o que é pedido no enunciado será:

function precosEntre(valorMenor, valorMaior, precos)

{

var maisBaratos = maisBaratosQue(valorMaior, precos);

  return maisCarosQue(valorMenor, maisBaratos);

}

Para responder o que é pedido na questão, será necessário que a função retorne a um array com todos os preços, sendo os valores maiores e maior.

Dessa forma temos que a função para que isso aconteça seja:

function precosEntre(valorMenor, valorMaior, precos)

{

var maisBaratos = maisBaratosQue(valorMaior, precos);

  return maisCarosQue(valorMenor, maisBaratos);

}

O código mostrado tem a variável maisBarato, na qual será formado por uma array, dado que a função está definida com os valores menores que o Valor maior, no caso 10.

Vejamos que ao concluir terá todos os números da lista, já que o valor maior  é o 10.

Então, o momento de retomada ocorre o filtro dos valores dados no array "maisBartos", de forma que ocorre uma fixação dos valores mínimos com a função maisCarosque(), por fim resulta apenas no intervalor solícito no exec.

Aprenda mais sobre o universo da programação, acessando em:

https://brainly.com.br/tarefa/12731990

Anexos:
Perguntas interessantes