Advertisement
AleksandarSpasov90

Untitled

Dec 18th, 2023
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function arrayManipulator(numbers, commands) {
  2.  
  3.     for (let command of commands) {
  4.         let tokens = command.split(" ");
  5.         let currentCommand = tokens[0];
  6.         if (currentCommand === "add") {
  7.             let index = Number(tokens[1]);
  8.             let element = Number(tokens[2]);
  9.             numbers.splice(index, 0, element);
  10.         } else if (currentCommand === "addMany") {
  11.             let index = Number(tokens[1]);
  12.             let setOfElements = tokens.slice(2, tokens.length);
  13.             numbers.splice(index, 0, ...setOfElements);
  14.  
  15.         } else if (currentCommand === "contains") {
  16.             let result = numbers.indexOf(+tokens[1])
  17.             console.log(result);
  18.         } else if (currentCommand === "remove") {
  19.             let index = Number(tokens[1]);
  20.             numbers.splice(index, 1)
  21.  
  22.         } else if (currentCommand === "shift") {
  23.             let positions = Number(tokens[1]);
  24.             for (let i = 0; i < positions; i++) {
  25.                 let first = numbers.shift();
  26.                 numbers.push(first);
  27.             }
  28.         } else if (currentCommand === "sumPairs") {
  29.             let resultArr = [];
  30.             if (numbers.length % 2 !== 0) {
  31.                 numbers.push(0);
  32.             }
  33.             for (let i = 0; i < numbers.length - 1; i += 2) {
  34.                 let sum = numbers[i] + numbers[i + 1];
  35.                 resultArr.push(sum)
  36.             }
  37.             numbers = resultArr;
  38.         } else if (currentCommand === "print") {
  39.             console.log(`[ ${numbers.map(Number).join(", ")} ]`);
  40.            
  41.         }
  42.  
  43.     }
  44.     //console.log(`[ ${numbers.map(Number).join(", ")} ]`);
  45.  
  46. }
  47. arrayManipulator(
  48.     [1, 2, 4, 5, 6, 7],
  49.     ['add 1 8', 'contains 1', 'contains 3', 'print'])
  50.  
  51. // 0
  52. // -1
  53. // [ 1, 8, 2, 4, 5, 6, 7 ]
  54.  
  55. // arrayManipulator([1, 2, 3, 4, 5],
  56. //     ['addMany 5 9 8 7 6 5', 'contains 15', 'remove 3', 'shift 1', 'print'])
  57.  
  58. // -1
  59. // [ 2, 3, 5, 9, 8, 7, 6, 5, 1 ]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement