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

Cinema Em um site sobre cinema, os visitantes cadastrados podem dar notas de 0 a 5 para um filme que ele tenha assistido. Cada filme tem um grande array de notas atribuídas pelos visitantes. Contudo, além de dar notas para os filmes, os visitantes querem ver o que as outras pessoas acharam do filme! É aí que você entra com seu código: Escreva uma função calculaGostos(notas) Essa função deve ser escrita para receber somente um parâmetro: um array de notas. Ela deve retornar também um array com três elementos: O primeiro, com a quantidade de notas iguais a 0 ou 1. Seriam os que não gostaram do filme O segundo, com a quantidade de notas iguais a 2 ou 3. Seriam os que acharam o filme mediano O terceiro, com a quantidade de notas iguais a 4 ou 5. Seriam os que gostaram do filme.


Deia15: Eu tentei de todos os jeitos possíveis, inclusive iguais as respostas que o pessoal deu, mas o único jeito que o site aceitou foi com as variáveis assim:
var nNaoGostaram = [];
var nMediano = [];
var nGostaram = [];

Soluções para a tarefa

Respondido por ayrtoncossuol
10

Resposta:

Como eu fiz.

Explicação:

function calculaGostos (notas) {

   var nNaoGostaram = 0;

   var nMediano = 0;

   var nGostaram = 0;

   for (var i = 0 ; i < notas.length ; i++) {

       if (notas[i] >= 0 && notas[i] < 2) {

           nNaoGostaram++;

       }  

       else if(notas[i] >= 2 && notas[i] < 4) {

           nMediano++;

       } else {

           nGostaram++;

       }

   }

   return [nNaoGostaram, nMediano, nGostaram];

}


jonatasoliveiravasco: function calculaGostos(notas){
var a = 0;
var b = 0
var c = 0
var lista = []
for (var i = 0; i < notas.length; i++){

if (notas[i] >= 0 && notas[i] <= 1){
a++;

}else if (notas[i] >= 2 && notas[i] < 4){
b++;

}else if (notas[i] > 3 && notas[i] <= 5)
c++;

}

return [a, b, c];
}
jonatasoliveiravasco: isso aqui deve te ajudar
jecamave: function deixaEntrar(dataDeNascimento, censura){
var idade = calcularIdade(dataDeNascimento)
return idade > censura}
Respondido por lucasgema1
43

Resposta:

function calculaGostos(notas){

   var nNaoGostaram = 0;

   var nMediano = 0;

   var nGostaram = 0;

for(var i = 0; i < notas.length; i++){

   if ((notas[i] == 0) || (notas[i] == 1)){

       nNaoGostaram++;

   }else if((notas[i] == 2) || (notas[i] == 3)){

       nMediano++;

   }else{

       nGostaram++;

   }

}      

   return [nNaoGostaram, nMediano, nGostaram];

}

Explicação:

O enunciado é bem claro no que está pedindo. Se clicar em "me dê uma pista" verá que o enunciado já até separou as variáveis que serão enviadas no array. É só copiá-las! Para separar as notas, repare no enunciado novamente. Ele diz claramente com a quantidade de notas IGUAIS a 0 ou 1 o seriam os que não gostaram do filme. Repare na palavra IGUAL. Transcrevendo em código é literalmente o sinal de comparação ==.

A segunda condição:  com a quantidade de notas IGUAIS a 2 ou 3. Seriam os que acharam o filme mediano. Não tem segredo! Se a condição do enunciado for verdadeira, guarde na variável.

Se não for a primeira, nem a segunda opção, logicamente será a terceira, Não precisa fazer um outro if novamente. Espero ter ajudado. Se gostou, deixe um coração aí! Boa sorte no processo!


darosamagalhaes: function calculaGostos(notas){

var nNaoGostaram = [];
var nMediano = [];
var nGostaram = [];

for (var i = 0; i < notas.length; i++) {
if ((notas[i] == 0) || (notas[i] == 1)) {
nNaoGostaram++;
} else if((notas[i] == 2) || (notas [i] == 3)) {
nMediano++;
}else if ((notas[i] == 4) || (notas[i] == 5)){
nGostaram++;
}
}
return [nNaoGostaram, nMediano, nGostaram];
}
renatorodriguesreis: Ola, boa tarde @Lucasgema1 tudo bem? Pode me tirar uma duvida o que significa os dois sinais de mais no final dessa variável nGostaram++;
marlonballa07: Significa "incremento". Você está adicionando um ao valor que possui. É o mesmo que:
i = i + 1
Dizemos que i receberá seu valor somado de um, logo, se i vale 5, somaremos um, e ele passará a valer 6. Entendeu?
Perguntas interessantes