calcularAtraccao

by joplomacedo

JavaScript

/*const pesosAtributoEmFuncaoDoObservador = {
	'm:0-5': {},
  'm:5-20': {},
  'm:5-25': {},
  'm:25-30': {},
  'm:30-45': {},
  'm:45-60': {},
  'm:60-150': {},
  
  'f:0-5': {},
  'f:5-20': {},
  'f:5-25': {},
  'f:25-30': {},
  'f:30-45': {},
  'f:45-60': {},
  'f:60-150': {},
};

function calcularAtraccao( atributosObservado, atributosObservador ) {
 const { aparencia, personalidade } = atributosObservado
 const { idade } = atributosObservador;

  let relativaAparencia;
  
  const fatorX = (10-personalidade)/2
  
  if ( aparencia >= 5 ) {
  	relativaAparencia = aparencia + fatorX
  } else {
  	relativaAparencia = aparencia - fatorX
  }
  
	return personalidade/2 + relativaAparencia/2;
}


const atributosPorPessoa = {
	henrique: {
    aparencia: 10,
    personalidade: 4
  },
  
  pedro: {
    aparencia: 5,
    personalidade: 5
  }
}

const atributosObservador = {
	sexo: 'm',
	idade: 29
}


const	atraccaoPorPessoa = Object.fromEntries(
  Object.entries(atributosPorPessoa).map( ([nome, atributos]) => {
    return [nome, calcularAtraccao(atributos, atributosObservador)]
  })
);


console.log(atraccaoPorPessoa);
*/