Informática, perguntado por karynascp81, 11 meses atrás

Academia Uma academia precisa separar grupos de pessoas tendo como base a sua altura para que dessa forma consiga formar grupos para as aulas de zumba. Temos um array que lista a altura de cada aluno da academia, e outros 3 arrays (Grupo A, B e C) que são classificados da seguinte forma: grupoA - Alunos com altura entre 150 a 159 grupoB - Alunos com altura entre 160 a 169 grupoC - Alunos com altura de 1.70 ou mais Seu trabalho é pegar cada valor do array alunos e colocar o valor correspondente em seu respectivo grupo. Para esse exercício, você precisará usar loops, condicionais e funções de arrays. Dicas:Utilize a função .push() para adicionar novos elementos a array var alunos = [170, 159, 151, 187, 156, 191, 165, 154, 167, 169, 171, 170, 160] var grupoA = []

Soluções para a tarefa

Respondido por lucasgema1
3

Resposta:

var alunos = [170, 159, 151, 187, 156, 191, 165, 154, 167, 169, 171, 170, 160];

var grupoA = [];

var grupoB = [];

var grupoC = [];

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

   if(alunos[i] >= 170){

       grupoC.push(alunos[i]);

   }else if(alunos[i] >= 160){

       grupoB.push(alunos[i]);

   }else{

       grupoA.push(alunos[i]);

   }

}

Explicação:

Primeiro crie três arrays, para guardar os dados dos três grupos diferentes. Observe que, neste caso não foi necessário criar uma função. Isso não foi pedido no enunciado. Após criar as variáveis, basta agora percorrer a array de alunos e separar eles de acordo com o que o enunciado pediu. Neste caso, a primeira condição é a de que o grupoA tenha altura de 150 a 159. O grupoB entre 160 a 169. E finalmente o grupoC mais que 170.

Resolvi inverter. Achei mais fácil. E economizei mais código! Se for maior que 170 grupo C. Se for maior que 160 grupo B. Se não for nem um nem outro, grupo A. A lógica é a seguinte: a primeira condição já elimina todos os maiores que 170. Para cair na segunda condição o usuário não é maior que 170. Mas, pode estar entre 160 e 169. Pois está acima de 160 e abaixo de 170. Se fosse maior que 170 atenderia a primeira condição. Se não for nenhuma dessas condições, só pode ser o grupo dos baixinhos. De 150 a 159. Observe que no array de alunos não contém altura menor que 150. Mas, somente a condição else resolve o problema.

Boa sorte!


bporfiriosilva: Você deve fazer um loop para percorrer o array de alunos para testar cada valor, usando o for e o atributo length do array
Perguntas interessantes