[20/28] Золотой мяч, подскажите в чем проблема


#1

Ребят, кто-то может подсказать почему мой код не проходит проверку? Если запускаю сам, с теми же данными, то результаты такие же, как и при проверке системой.

Заранее спасибо за ответ!

var firstPlayer = {
      name: 'Васька',
      goals: 5,
      passes: 5
    };

    var secondPlayer = {
      name: 'Байт',
      goals: 12,
      passes: 2  
    };

    var thirdPlayer = {
      name: 'Снежок',
      goals: 2,
      passes: 7  
    };

    var soccerPlayers = [firstPlayer, secondPlayer, thirdPlayer];

    var getStatistics = function (players) {  
      getCoefficient(soccerPlayers);
      getPercent(soccerPlayers);
      return players;
    };

    var getCoefficient = function(players) {
      for (var i = 0; i < players.length; i++){
        players[i].coefficient = (players[i].goals * 2) + players[i].passes;
      } 
    }

    var getPercent = function(players) {  
      var goalsSum = 0;
      for (var i = 0; i < players.length; i++) {
        goalsSum += players[i].goals;    
      }
      
      for (var i = 0; i < players.length; i++) {
        players[i].percent = Math.round((players[i].goals * 100) / goalsSum);
      }
    }

    getStatistics(soccerPlayers);

publicpreview%20(1)


#2

Попробуйте запустить функции с параметром players, а не soccerPlayers


#3

Спасибо большое! Это помогло. Как-то совсем проглядел, что не тот параметр передаю.


#4

По заданию, как я понимаю нужна только функция. Т.е. объявление объектов, массива и самой функции внизу можно смело убирать. Все это делается самой проверкой.


#5

не могу пройти не один тест, что делать?

var firstPlayer = {
  name: 'Васька',
  goals: 5,
  passes: 5
} 
var secondPlayer = {
  name: 'Байт',
  goals: 12,
  passes: 2  
}; 
var thirdPlayer = {
  name: 'Снежок',
  goals: 2,
  passes: 7  
}; 
var soccerPlayers = [firstPlayer, secondPlayer, thirdPlayer]; 
var getStatistics = function (players) {
var sumGoals = 0;
for (var i = 0; i < players.length; ++i){
sumGoals += players[i].goals;
}
for (var n = 0; n < players.length; ++n){
  players[n].coefficient = (players[n].goals * 2) + players[n].passes;
  players[n].percent = Math.round( (players[n].goals * 100) / sumGoals); 
  return players[n];
} 
};   
getStatistics(soccerPlayers);

#6

А что говорят тесты?


#7

уже решил, извините за беспокойство)