<commit_before>'use strict';
var goldSaints = JSON.parse('[{"id":1,"nome":"Mu","dataNascimento":"1967-03-27T03:00:00.000Z","alturaCm":182,"pesoLb":165.35,"signo":"\u00c1ries","tipoSanguineo":"A","localNascimento":"Tibete","localTreinamento":"Jamiel","golpes":["Parede de Cristal","Extin\u00e7\u00e3o Estelar","Revolu\u00e7\u00e3o Estelar"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900361\/93eed452-0d66-11e6-8ba2-e083b8297b2b.png","isThumb":true}]},{"id":2,"nome":"Aldebaran","dataNascimento":"1967-05-08T03:00:00.000Z","alturaCm":210,"pesoLb":286.600941,"signo":"Touro","tipoSanguineo":"B","localNascimento":"Brasil","localTreinamento":"Brasil","golpes":["Grande Chifre"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900419\/dca83616-0d66-11e6-9757-8d07311e6999.png","isThumb":true}]},{"id":3,"nome":"Saga","dataNascimento":"1959-05-30T03:00:00.000Z","alturaCm":188,"pesoLb":191.81,"signo":"G\u00eameos","tipoSanguineo":"AB","localNascimento":"Gr\u00e9cia","localTreinamento":"Santu\u00e1rio, Gr\u00e9cia","golpes":["Sat\u00e3 Imperial","Outra Dimens\u00e3o","Explos\u00e3o Gal\u00e1ctica"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900456\/00e25b7e-0d67-11e6-9fb3-4b35577080d2.png","isThumb":true}]},{"id":4,"nome":"M\u00e1<NAME>","dataNascimento":"1964-06-24T03:00:00.000Z","alturaCm":184,"pesoLb":180.77900,"signo":"C\u00e2ncer","tipoSanguineo":"A","localNascimento":"It\u00e1lia","localTreinamento":"Sic\u00edlia, It\u00e1lia","golpes":["Ondas do Inferno"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900489\/2cc0fd40-0d67-11e6-9bc0-600c5381c650.png","isThumb":true}]},{"id":5,"nome":"Aiolia","dataNascimento":"1967-08-16T03:00:00.000Z","alturaCm":185,"pesoLb":187.392923,"signo":"Le\u00e3o","tipoSanguineo":"O","localNascimento":"Gr\u00e9cia","localTreinamento":"Santu\u00e1rio, Gr\u00e9cia","golpes":["C\u00e1psula do Poder","Pata do Le\u00e3o","Rel\u00e2mpago de Plasma"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900613\/c4ba42f0-0d67-11e6-9c0e-e79c2278ab0b.png","isThumb":true}]},{"id":6,"nome":"Shaka","dataNascimento":"1967-09-19T03:00:00.000Z","alturaCm":182,"pesoLb":149.914338,"signo":"Virgem","tipoSanguineo":"AB","localNascimento":"\u00cdndia","localTreinamento":"Ganges, \u00cdndia","golpes":["Rendi\u00e7\u00e3o Divina","Ciclo das 6 Exist\u00eancias","Tesouro do C\u00e9u","Invoca\u00e7\u00e3o dos Esp\u00edritos","Ohm!","Kahn!"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900695\/4a5675dc-0d68-11e6-8396-2a775a2b0c39.png","isThumb":true}]},{"id":7,"nome":"Dohko","dataNascimento":"1726-10-20T03:00:00.000Z","alturaCm":170,"signo":"Libra","tipoSanguineo":"A","localNascimento":"China","localTreinamento":"5 Picos Antigos de Rozan, China","golpes":["C\u00f3lera do Drag\u00e3o","C\u00f3lera dos 100 Drag\u00f5es"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900848\/ea27d2e0-0d68-11e6-9d73-78add86a1811.png","isThumb":true}]},{"id":8,"nome":"Milo","dataNascimento":"1967-11-08T03:00:00.000Z","alturaCm":185,"pesoLb":185.1883,"signo":"Escorpi\u00e3o","tipoSanguineo":"B","localNascimento":"Gr\u00e9cia","localTreinamento":"Ilha de Milos, Gr\u00e9cia","golpes":["Restri\u00e7\u00e3o","Agulha Escarlate","Antares"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900894\/36445900-0d69-11e6-81c9-77cb17448b9d.png","isThumb":true}]},{"id":9,"nome":"Aiolos","dataNascimento":"1960-11-30T03:00:00.000Z","alturaCm":187,"pesoLb":187.392923,"signo":"Sagit\u00e1rio","tipoSanguineo":"O","localNascimento":"Gr\u00e9cia","localTreinamento":"Santu\u00e1rio, Gr\u00e9cia","golpes":["Trov\u00e3o At\u00f4mico","Flecha da Justi\u00e7a"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14901061\/e5fe3b90-0d69-11e6-9a78-2449055be1fa.png","isThumb":true}]},{"id":10,"nome":"Shura","dataNascimento":"1964-01-12T03:00:00.000Z","alturaCm":186,"pesoLb":182.983678,"signo":"Capric\u00f3rnio","tipoSanguineo":"B","localNascimento":"Espanha","localTreinamento":"Montes Pirineus, Espanha","golpes":["Excalibur"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14901144\/5af186c8-0d6a-11e6-934a-35db18b16752.png","isThumb":true}]},{"id":11,"nome":"Camus","dataNascimento":"1967-02-07T03:00:00.000Z","alturaCm":184,"pesoLb":167.551319,"signo":"Aqu\u00e1rio","tipoSanguineo":"A","localNascimento":"Fran\u00e7a","localTreinamento":"Sib\u00e9ria Oriental","golpes":["P\u00f3 de Diamante","Trov\u00e3o Aurora","Execu\u00e7\u00e3o Aurora"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14901196\/9f128f78-0d6a-11e6-86b3-1a68234e9bfc.png","isThumb":true}]},{"id":12,"nome":"Afrodite","dataNascimento":"1965-03-10T03:00:00.000Z","alturaCm":183,"pesoLb":158.732829,"signo":"Peixes","tipoSanguineo":"O","localNascimento":"Su\u00e9cia","localTreinamento":"Groel\u00e2ndia","golpes":["Rosas Diab\u00f3licas Reais","Rosas Piranhas","Rosa Branca"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14901259\/f4a0b3ca-0d6a-11e6-89b1-59855cabc43d.png","isThumb":true}]}]');
console.log(goldSaints);

// 1 - Doadores de sangue
var obterDoadores = function(){
  return goldSaints.filter(function (e){
    return e.tipoSanguineo ==='O';
  });
}

// 2 - Canivete suíço
var obterCavaleiroComMaisGolpes = function(){
  var cavaleiroComMaisGolpes = {};
  var aux = 0;
  for(var i=0; i<goldSaints.length; i++){
    if(goldSaints[i].golpes.length > aux) {
      cavaleiroComMaisGolpes = goldSaints[i];
      aux = goldSaints[i].golpes.length;
    }
  }
  return cavaleiroComMaisGolpes;
}

// 3 - Aniversários
var obterMesesComMaisAniversarios = function(){
  var array = [];
  var cont = [0,0,0,0,0,0,0,0,0,0,0,0];
  var retorna = [];
  var meses = ['Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'];
  var maior = 0;
    for(var i=0; i<goldSaints.length; i++){
      array.push( parseInt(goldSaints[i].dataNascimento.substring(5,7)));
      for(var j=0; j<12; j++){
        if (array[i]-1 === j)cont[j]++;
      }
    }
    for(var i=0; i<12; i++){
      if (cont[i] > maior) maior=cont[i];
    }
    for(var i=0; i<12; i++){
      if (cont[i] === maior) retorna.push(meses[i]);
    }
  return retorna;
}

// 4 - Altura média
var obterAlturaMedia = function(){
  var media = 0;
  var soma = 0;
  for(var i=0; i<goldSaints.length; i++){
    soma += goldSaints[i].alturaCm;
  }
  media = (soma / goldSaints.length) / 100;
  return Math.round(media*100)/100;
}

// 5 - Altura mediana
var obterAlturaMediana = function(){
  var mediana = 0;
  var arrayOrd = goldSaints.concat().sort(function(a, b) {
    return a.alturaCm > b.alturaCm ? 1 : -1;
  });
  mediana = (arrayOrd[5].alturaCm + arrayOrd[6].alturaCm) / 2 / 100;
  return Math.round(mediana*100)/100;
}

// 6 - Peso médio
var pesoMedio = function(array){
  var media = 0;
  var soma = 0;
  var cont = 0;
  for (var i = 0; i < array.length; i++) {
    for (var prop in array[i]) {
      if(prop === 'pesoLb'){
         soma += array[i][prop];
         cont++;
      }
    }
  }
  media = soma / cont * 0.453592;
  return Math.round(media*100)/100;
}
var obterPesoMedio = function(){
  return pesoMedio(goldSaints);
}

var obterPesoMedioDoadores = function(){
  return pesoMedio(obterDoadores());
}

// 7 - IMC
var obterIMC = function(){
  var array = [];
  var imc = 0;
  for (var i = 0; i < goldSaints.length; i++) {
    for (var prop in goldSaints[i]) {
      if(prop === 'pesoLb'){
          imc = (goldSaints[i].pesoLb * 0.453592) / ((goldSaints[i].alturaCm / 100)*(goldSaints[i].alturaCm / 100));
         array.push(Math.round(imc*100)/100);
      }
    }
  }
  return array;
}

// 8 - Sobrepeso
var obterSobrepeso = function(){
  var array=[];
  for (var i = 0; i < obterIMC().length; i++) {
    if (obterIMC()[i] > 25 && obterIMC()[i] < 30) array.push(goldSaints[i]);
  }
  return array;
}























// scroll
<commit_msg>fix(lista-js-basico.js): arrumar exercício 5 para aceitar que goldSaints tenha qualquer número de objetos.<commit_after>'use strict';
var goldSaints = JSON.parse('[{"id":1,"nome":"Mu","dataNascimento":"1967-03-27T03:00:00.000Z","alturaCm":182,"pesoLb":165.35,"signo":"\u00c1ries","tipoSanguineo":"A","localNascimento":"Tibete","localTreinamento":"Jamiel","golpes":["Parede de Cristal","Extin\u00e7\u00e3o Estelar","Revolu\u00e7\u00e3o Estelar"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900361\/93eed452-0d66-11e6-8ba2-e083b8297b2b.png","isThumb":true}]},{"id":2,"nome":"Aldebaran","dataNascimento":"1967-05-08T03:00:00.000Z","alturaCm":210,"pesoLb":286.600941,"signo":"Touro","tipoSanguineo":"B","localNascimento":"Brasil","localTreinamento":"Brasil","golpes":["Grande Chifre"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900419\/dca83616-0d66-11e6-9757-8d07311e6999.png","isThumb":true}]},{"id":3,"nome":"Saga","dataNascimento":"1959-05-30T03:00:00.000Z","alturaCm":188,"pesoLb":191.81,"signo":"G\u00eameos","tipoSanguineo":"AB","localNascimento":"Gr\u00e9cia","localTreinamento":"Santu\u00e1rio, Gr\u00e9cia","golpes":["Sat\u00e3 Imperial","Outra Dimens\u00e3o","Explos\u00e3o Gal\u00e1ctica"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900456\/00e25b7e-0d67-11e6-9fb3-4b35577080d2.png","isThumb":true}]},{"id":4,"nome":"M\u00e1scara da Morte","dataNascimento":"1964-06-24T03:00:00.000Z","alturaCm":184,"pesoLb":180.77900,"signo":"C\u00e2ncer","tipoSanguineo":"A","localNascimento":"It\u00e1lia","localTreinamento":"Sic\u00edlia, It\u00e1lia","golpes":["Ondas do Inferno"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900489\/2cc0fd40-0d67-11e6-9bc0-600c5381c650.png","isThumb":true}]},{"id":5,"nome":"Aiolia","dataNascimento":"1967-08-16T03:00:00.000Z","alturaCm":185,"pesoLb":187.392923,"signo":"Le\u00e3o","tipoSanguineo":"O","localNascimento":"Gr\u00e9cia","localTreinamento":"Santu\u00e1rio, Gr\u00e9cia","golpes":["C\u00e1psula do Poder","Pata do Le\u00e3o","Rel\u00e2mpago de Plasma"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900613\/c4ba42f0-0d67-11e6-9c0e-e79c2278ab0b.png","isThumb":true}]},{"id":6,"nome":"Shaka","dataNascimento":"1967-09-19T03:00:00.000Z","alturaCm":182,"pesoLb":149.914338,"signo":"Virgem","tipoSanguineo":"AB","localNascimento":"\u00cdndia","localTreinamento":"Ganges, \u00cdndia","golpes":["Rendi\u00e7\u00e3o Divina","Ciclo das 6 Exist\u00eancias","Tesouro do C\u00e9u","Invoca\u00e7\u00e3o dos Esp\u00edritos","Ohm!","Kahn!"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900695\/4a5675dc-0d68-11e6-8396-2a775a2b0c39.png","isThumb":true}]},{"id":7,"nome":"Dohko","dataNascimento":"1726-10-20T03:00:00.000Z","alturaCm":170,"signo":"Libra","tipoSanguineo":"A","localNascimento":"China","localTreinamento":"5 Picos Antigos de Rozan, China","golpes":["C\u00f3lera do Drag\u00e3o","C\u00f3lera dos 100 Drag\u00f5es"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900848\/ea27d2e0-0d68-11e6-9d73-78add86a1811.png","isThumb":true}]},{"id":8,"nome":"Milo","dataNascimento":"1967-11-08T03:00:00.000Z","alturaCm":185,"pesoLb":185.1883,"signo":"Escorpi\u00e3o","tipoSanguineo":"B","localNascimento":"Gr\u00e9cia","localTreinamento":"Ilha de Milos, Gr\u00e9cia","golpes":["Restri\u00e7\u00e3o","Agulha Escarlate","Antares"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14900894\/36445900-0d69-11e6-81c9-77cb17448b9d.png","isThumb":true}]},{"id":9,"nome":"Aiolos","dataNascimento":"1960-11-30T03:00:00.000Z","alturaCm":187,"pesoLb":187.392923,"signo":"Sagit\u00e1rio","tipoSanguineo":"O","localNascimento":"Gr\u00e9cia","localTreinamento":"Santu\u00e1rio, Gr\u00e9cia","golpes":["Trov\u00e3o At\u00f4mico","Flecha da Justi\u00e7a"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14901061\/e5fe3b90-0d69-11e6-9a78-2449055be1fa.png","isThumb":true}]},{"id":10,"nome":"Shura","dataNascimento":"1964-01-12T03:00:00.000Z","alturaCm":186,"pesoLb":182.983678,"signo":"Capric\u00f3rnio","tipoSanguineo":"B","localNascimento":"Espanha","localTreinamento":"Montes Pirineus, Espanha","golpes":["Excalibur"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14901144\/5af186c8-0d6a-11e6-934a-35db18b16752.png","isThumb":true}]},{"id":11,"nome":"Camus","dataNascimento":"1967-02-07T03:00:00.000Z","alturaCm":184,"pesoLb":167.551319,"signo":"Aqu\u00e1rio","tipoSanguineo":"A","localNascimento":"Fran\u00e7a","localTreinamento":"Sib\u00e9ria Oriental","golpes":["P\u00f3 de Diamante","Trov\u00e3o Aurora","Execu\u00e7\u00e3o Aurora"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14901196\/9f128f78-0d6a-11e6-86b3-1a68234e9bfc.png","isThumb":true}]},{"id":12,"nome":"Afrodite","dataNascimento":"1965-03-10T03:00:00.000Z","alturaCm":183,"pesoLb":158.732829,"signo":"Peixes","tipoSanguineo":"O","localNascimento":"Su\u00e9cia","localTreinamento":"Groel\u00e2ndia","golpes":["Rosas Diab\u00f3licas Reais","Rosas Piranhas","Rosa Branca"],"imagens":[{"url":"https:\/\/cloud.githubusercontent.com\/assets\/526075\/14901259\/f4a0b3ca-0d6a-11e6-89b1-59855cabc43d.png","isThumb":true}]}]');
console.log(goldSaints);

// 1 - Doadores de sangue
var obterDoadores = function(){
  return goldSaints.filter(function (e){
    return e.tipoSanguineo ==='O';
  });
}

// 2 - Canivete suíço
var obterCavaleiroComMaisGolpes = function(){
  var cavaleiroComMaisGolpes = {};
  var aux = 0;
  for(var i=0; i<goldSaints.length; i++){
    if(goldSaints[i].golpes.length > aux) {
      cavaleiroComMaisGolpes = goldSaints[i];
      aux = goldSaints[i].golpes.length;
    }
  }
  return cavaleiroComMaisGolpes;
}

// 3 - Aniversários
var obterMesesComMaisAniversarios = function(){
  var array = [];
  var cont = [0,0,0,0,0,0,0,0,0,0,0,0];
  var retorna = [];
  var meses = ['Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'];
  var maior = 0;
    for(var i=0; i<goldSaints.length; i++){
      array.push( parseInt(goldSaints[i].dataNascimento.substring(5,7)));
      for(var j=0; j<12; j++){
        if (array[i]-1 === j)cont[j]++;
      }
    }
    for(var i=0; i<12; i++){
      if (cont[i] > maior) maior=cont[i];
    }
    for(var i=0; i<12; i++){
      if (cont[i] === maior) retorna.push(meses[i]);
    }
  return retorna;
}

// 4 - Altura média
var obterAlturaMedia = function(){
  var media = 0;
  var soma = 0;
  for(var i=0; i<goldSaints.length; i++){
    soma += goldSaints[i].alturaCm;
  }
  media = (soma / goldSaints.length) / 100;
  return Math.round(media*100)/100;
}

// 5 - Altura mediana
var obterAlturaMediana = function(){
  var mediana = 0;
  var arrayOrd = goldSaints.concat().sort(function(a, b) {
    return a.alturaCm > b.alturaCm ? 1 : -1;
  });
  mediana = (arrayOrd[arrayOrd.length / 2 -1].alturaCm + arrayOrd[arrayOrd.length / 2].alturaCm) / 2 / 100;
  return Math.round(mediana*100)/100;
}

// 6 - Peso médio
var pesoMedio = function(array){
  var media = 0;
  var soma = 0;
  var cont = 0;
  for (var i = 0; i < array.length; i++) {
    for (var prop in array[i]) {
      if(prop === 'pesoLb'){
         soma += array[i][prop];
         cont++;
      }
    }
  }
  media = soma / cont * 0.453592;
  return Math.round(media*100)/100;
}
var obterPesoMedio = function(){
  return pesoMedio(goldSaints);
}

var obterPesoMedioDoadores = function(){
  return pesoMedio(obterDoadores());
}

// 7 - IMC
var obterIMC = function(){
  var array = [];
  var imc = 0;
  for (var i = 0; i < goldSaints.length; i++) {
    for (var prop in goldSaints[i]) {
      if(prop === 'pesoLb'){
          imc = (goldSaints[i].pesoLb * 0.453592) / ((goldSaints[i].alturaCm / 100)*(goldSaints[i].alturaCm / 100));
         array.push(Math.round(imc*100)/100);
      }
    }
  }
  return array;
}

// 8 - Sobrepeso
var obterSobrepeso = function(){
  var array=[];
  for (var i = 0; i < obterIMC().length; i++) {
    if (obterIMC()[i] > 25 && obterIMC()[i] < 30) array.push(goldSaints[i]);
  }
  return array;
}























// scroll

{'fraction_non_alphanumeric': 0.23081637656288306, 'fraction_numerical': 0.13005638636920813, 'mean_word_length': 6.172307692307692, 'pattern_counts': {'":': 310, '<': 24, '<?xml version=': 0, '>': 12, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6814912', 'n_tokens_mistral': 8254, 'n_tokens_neox': 7023, 'n_words': 619}