Advertisement
AlexTasev

1.Travel Plans_Exam-062018

Oct 13th, 2018
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function calculate(input) {
  2.     let earnedGold = 0;
  3.     let specialised = ["Programming", "Hardware maintenance", "Cooking", "Translating", "Designing"];
  4.     let countSpecialized = 1;
  5.     const reward = 200;
  6.     let average = ["Driving", "Managing", "Fishing", "Gardening"];
  7.     let countClumsy = 1;
  8.  
  9.     for (let i = 0; i < input.length; i++) {
  10.         let tokens = input[i].split(" : ");
  11.         let profession = tokens[0];
  12.         let goldOffered = +tokens[1];
  13.  
  14.         if (specialised.includes(profession)) {
  15.             if (goldOffered >= reward) {
  16.                 earnedGold += goldOffered * 0.8;
  17.                 if (countSpecialized % 2 === 0) {
  18.                     earnedGold += reward;
  19.                 }
  20.                 countSpecialized++;
  21.             }
  22.         } else if (average.includes(profession)) {
  23.             earnedGold += goldOffered;
  24.         } else {
  25.             if (countClumsy % 3 === 0) {
  26.                 earnedGold += goldOffered * 0.9;
  27.             } else if (countClumsy % 2 === 0) {
  28.                 earnedGold += goldOffered * 0.95;
  29.             } else {
  30.                 earnedGold += goldOffered;
  31.             }
  32.             countClumsy++;
  33.         }
  34.     }
  35.     console.log(`Final sum: ${earnedGold.toFixed(2)}`);
  36.  
  37.     const neededGold = 1000;
  38.     let difference = Math.abs(earnedGold - neededGold);
  39.  
  40.     if (earnedGold < neededGold) {
  41.         console.log(`Mariyka need to earn ${difference.toFixed(2)} gold more to continue in the next task.`)
  42.     } else {
  43.         console.log(`Mariyka earned ${difference.toFixed(2)} gold more.`)
  44.     }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement