name: "HAL",
ranges: [[7615, 7800], [65952, 65953], [119296, 200000]],
},
{
name: "GOUGLE",
ranges: [[7936, 7958], [7960, 7966], [65952, 65953], [119290, 200000]],
},
{
name: "YOUTOUBE",
ranges: [[65856, 66000], [65952, 65953], [119000, 200000]],
},
{
name: "ECRY",
ranges: [[125184, 126000], [125264, 127000], [125278, 126100]]
},
{
name: "DUPONTco",
ranges: [[66864, 66916], [66927, 66928]]
}
]
Compagnie.ranges est un tableau donnant les salaires et leurs variations (le second chiffre tient compte des primes).
Plus en détail, les propriétés de l'objet compagnie[1] sont :
name: "HAL", // nom de la compagnie
ranges: [[7615, 7800], [65952, 65953], [119296, 200000]], // trois salaires
[7615, 7800] // [salaireMin, Salaire avec prime]
Questions
Ecrire une fonction donnant le nom d'une compagnie dont le salaire appartient à une catégorie.
Par exemple pour 120000 on peut avoir
"HAL" car Hal posséde un salaire variant de 119296 à 200000
SOLUTION
Solution
Ecrire une fonction qui donne l'ensemble des compagnies dont le montant appartient à une catégorie de salaires.
Par exemple pour le montant 120000 on peut avoir (en gras la catégorie qui valide la condition d'appartenance :
[{"name":"HAL","ranges":[[7615,7800],[65952,65953],[119296,200000]]},
{"name":"GOUGLE","ranges":[[7936,7958],[7960,7966],[65952,65953],[119290,200000]]},
{"name":"YOUTOUBE","ranges":[[65856,66000],[65952,65953],[119000,200000]]}]
Solution
Ecrire une fonction donnant le nom des compagnies dont tous salaires encadre une valeur.
Par exemple pour 125278 seul ECRY a tous les salaires validant la condition
[{"name":"ECRY","ranges":[[125184,126000],[125264,127000],[125278,126100]]}]
Donner les compagnies triées par écart de salaires (gap).
[{"name":"DUPONTco","gap":63},{"name":"ECRY","gap":94},{"name":"YOUTOUBE","gap":53144},{"name":"GOUGLE","gap":111354},{"name":"HAL","gap":111681}]
Donner les compagnies triées par salaire moyen.
[{"name":"GOUGLE","average":50285},{"name":"HAL","average":64288},{"name":"DUPONTco","average":66896},{"name":"YOUTOUBE","average":83603},{"name":"ECRY","average":125242}]
Help
Pour les dernières questions, pensez à générer une structure contenant les infos utiles au travail des fonctions d'affichage.
Par exemple pour la compagnie "Dupont co"

On peut calculer les valeurs : min,max,gap=(max-min),... et les stocker dans une propriétés infos (par exemple).

Et ainsi de suite sur tous les éléments du tableau. L'idée est de faire l'ensemble de ces calculs en une seule passe.
Voici les valeurs pour "ECRY"

Cette structure sera stockée dans le tableau
COMPAGNIES.infos = transforme();