-
Notifications
You must be signed in to change notification settings - Fork 0
/
samostiyna
58 lines (48 loc) · 2.22 KB
/
samostiyna
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
// Сумма в диапазоне
// Напишите 2 функции.
// Первая функция генерирует массив на N рандомных чисел в диапазоне от {A} до {B} и возвращает его
// Т.е. принимает 3 параметра и {A} не может быть больше чем {B}
// пераметры {A} и {B} запросить у пользователя
// Например: doSmth(8, 1, 10) -> [3, 2, 5, 4, 7, 1, 3, 10]
// Вторая функция принимает массив рандомных чисел, индекс {С} c которого начинать подсчет и индекс {D} ПО который считать
// индексы {С} и {D} запросить у пользователя
// Должна быть валидация индексов
// - Чтобы не было отрицательных чисел
// - Чтобы индекс не выходил за рамки допустимых индексов
// - Чтобы первый индекс был меньше или равен второму
// Пример вывода в консоль:
// Массив: [.....] сгенерированный от {A} до {B}
// Сумма чисел в диапазоне от индекса {С} по индекс {D} равна: 10
let num1 = +prompt("Number1");
let num2 = +prompt("Number2");
function randomInt(num1, num2) {
min = Math.ceil(num1);
max = Math.floor(num2);
let randomArr = [];
for (i = 0; i < 10; i++) {
let randomNumber = Math.floor(Math.random() * (max - min + 1)) + min;
randomArr.push(randomNumber);
}
return randomArr;
}
let randomNumbersArr = randomInt(num1, num2);
let indexC = +prompt("indexC");
let indexD = +prompt("indexD");
console.log(randomNumbersArr);
function newArr(arr, c, d) {
if (c < 0 || d < 0) {
return alert("index c and index d < 0");
}
if (d >= arr.length) {
return alert("d array length");
}
if (c > d) {
return alert("index C > index D");
}
var sum = 0;
for (let i = c; i < d; i++) {
sum = sum + arr[i];
}
return console.log("Sum of numbers between c and d = " + sum);
}
console.log(newArr(randomNumbersArr, indexC, indexD));