forked from vsb-vaj/template-lab-2024s-01
-
Notifications
You must be signed in to change notification settings - Fork 0
/
task-array.js
124 lines (98 loc) · 4.01 KB
/
task-array.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
// EXERCISE:
// You can write all the code natively (for cycles and such) or you can use some advanced functions which JS arrays provides in case you see them fit
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array
// There can be multiple solutions to each task, solve it as you see fit.
// You will work with array `numbers` which will be generated by code (code below) in every task.
// Write these functions:
// This block generates array with random length with values between 1-100
export let numbers = [];
const length = Math.ceil(Math.random() * 10) + 5;
for (let i = 0; i < length; i = i + 1) {
numbers.push(Math.ceil(Math.random() * 100));
}
// a) Function which will print to console a whole array
export const printArray = (numbers) => {
console.log(numbers)
};
// b) Function which will print to console the length of array
export const printLength = (numbers) => {
console.log(numbers.length)
};
// c) Function which will print to console the first element of array
export const printFirstItem = (numbers) => {
console.log(numbers[0]);
};
// d) Function which will print to console the last element
export const printLastItem = (numbers) => {
console.log(numbers[numbers.length - 1])
};
// e) Function which will print to console the largest number (You can check Math functions)
export const printLargestItem = (numbers) => {
console.log(Math.max(...numbers))
};
// f) Function which will print to console the smallest number (You can check Math functions)
export const printSmallestItem = (numbers) => {
console.log(Math.min(...numbers))
};
// g) Function which will print to console the sum of all numbers in array (You can check reduce function)
export const printSum = (numbers) => {
const sum = numbers.reduce((acc, number) => acc + number, 0)
console.log(sum)
};
// h) Function which will print to console the difference between the largest and the smallest number (You can check Math functions)
export const printSALDifference = (numbers) => {
const largest = Math.max(...numbers)
const smallest = Math.min(...numbers)
console.log(largest - smallest)
};
// i) Function which will print to console the average of all numbers (You can check reduce function)
export const printAverage = (numbers) => {
const sum = numbers.reduce((acc, number) => acc + number, 0)
console.log(sum / numbers.length)
};
// j) Function which will print to console the index of largest number (You can check Math functions)
export const printLargestIndex = (numbers) => {
const largestNumber = Math.max(...numbers)
console.log(numbers.indexOf(largestNumber))
};
// k) Function which will print to console the even numbers (not the array of even numbers),
// if array doesn't contain any even number, show text "Even number isn't in array"
export const printEvenNums = (numbers) => {
const evenNumbers = numbers.filter(number => number % 2 === 0);
if (evenNumbers.length === 0) {
console.log("Even number isn't in array");
} else {
console.log(evenNumbers)
}
};
// l) Function which will multiple by 2 every number in array and print the array to console
// Example: printNumsMultipliedBy2([1,2,3]) -> [2,4,6]
export const printNumsMultipliedBy2 = (numbers) => {
const doubledNumbers = numbers.map(number => number * 2)
console.log(doubledNumbers)
};
// Calling func for test
console.log('A - printArray:')
printArray(numbers)
console.log('B - printLength:')
printLength(numbers)
console.log('C - printFirstItem:')
printFirstItem(numbers)
console.log('D - printLastItem:')
printLastItem(numbers)
console.log('E - printLargestIndex:')
printLargestIndex(numbers)
console.log('F - printSmallestItem:')
printSmallestItem(numbers)
console.log('G - printSum:')
printSum(numbers)
console.log('H - printSALDifference:')
printSALDifference(numbers)
console.log('I - printAverage:')
printAverage(numbers)
console.log('J - printLargestIndex:')
printLargestIndex(numbers)
console.log('K - printEvenNums:')
printEvenNums(numbers)
console.log('L - printNumsMultipliedBy2:')
printNumsMultipliedBy2(numbers)