Necessitamos uma função maisMenos que receba um array e retorne outro com os seguintes três números:
na primeira posição, a fração de números que são positivos
na segunda posição, a fração de números que são zero
na última posição, a fração de números que são negativos
Por exemplo, maisMenos([1, 2, 0, -1]) deveria retornar [0.5, 0.25, 0.25], devido a que há 50% de positivos, 25% de zeros, e 25% de negativos.
Escreva a função maisMenos.
Respostas
Resposta:
function maisMenos(numeros) {
var quantidade = numeros.length
var positivos = 0;
var zeros = 0;
var negativos = 0;
var i = 0;
for (var i = 0; i < quantidade; i++) {
if (numeros[i] < 0) {
negativos = negativos + 1;
} else if (numeros[i] > 0) {
positivos = positivos + 1;
} else {
zeros = zeros + 1;
}
}
positivos = positivos / quantidade;
zeros = zeros / quantidade;
negativos = negativos / quantidade;
var total = [positivos, zeros, negativos];
return total;
}
console.log (maisMenos([1,2,0,-1]))
var i = 0 --> altere para var intCont = 0 ou intContador = 0
Explicação:
Altere a sua variável ' i ' para iCont ou intContador ou outro identificador mais apropriado. O sentido deles é justamente te fazer pensar antes de definir apenas uma variável como i.
Como boa prática de programação, variáveis inteiras, devem preceder da palavra int. Ou seja intNomeDaVariavel - padrão camelCase.
var quantidade = numeros.length
var positivos = 0;
var zeros = 0;
var negativos = 0;
var iCon = 0;
for (var iCon = 0; iCon < quantidade; iCon++) {
if (numeros[iCon] < 0) {
negativos = negativos + 1;
} else if (numeros[iCon] > 0) {
positivos = positivos + 1;
} else {
zeros = zeros + 1;
}
}
positivos = positivos / quantidade;
zeros = zeros / quantidade;
negativos = negativos / quantidade;
var total = [positivos, zeros, negativos];
return total;
}
console.log (maisMenos([1,2,0,-1]))
Resposta:
(maisMenos([1,2,0,-1]))
Explicação:
function maisMenos(numeros) {
var quantidade = numeros.length
var positivos = 0;
var zeros = 0;
var negativos = 0;
var i = 0;
for (var i = 0; i < quantidade; i++) {
if (numeros[i] < 0) {
negativos = negativos + 1;
} else if (numeros[i] > 0) {
positivos = positivos + 1;
} else {
zeros = zeros + 1;
}
}
positivos = positivos / quantidade;
zeros = zeros / quantidade;
negativos = negativos / quantidade;
var total = [positivos, zeros, negativos];
return total;
}
console.log (maisMenos([1,2,0,-1]))
Objetivos que não foram atendidos:
i é um identificador muito curto
function maisMenos(arrayEntrada){
let numeroPositivos = 0;
let numeroZeros = 0;
let numeroNegativos = 0;
for(let i = 0; i < arrayEntrada.length; i++){
if(arrayEntrada[i] < 0)
numeroNegativos++;
else if(arrayEntrada[i] == 0)
numeroZeros++;
else
numeroPositivos++;
}
retorno[0] = numeroPositivos / arrayEntrada.length;
retorno[1] = numeroZeros / arrayEntrada.length;
retorno[2] = numeroNegativos / arrayEntrada.length;
return retorno;
}
console.log(maisMenos([1, 2, 0, -1]));