Тема: використання циклу for з масивом даних.

Завдання
Вивессти в arrB числа з масиву arrA/2

let arrA = [8,12,24];
let arrB = [ ];

Хто зможе дати пояснення цій задачі, буду дуже вдячна.

2

Re: використання циклу for з масивом даних.

oksanasurotiyk написав:

Завдання
Вивессти в arrB числа з масиву arrA/2

let
arr A = [8,12,24];
arrB = [ ];

Хто зможе дати пояснення цій задачі, буду дуже вдячна.

Добре, пояснюю цю задачу.

У вас є масив arrA з набором значень (8, 12, 24). Вам треба використати цикл for для того, аби запихнути значення з масиву arrA в масив arrB. При цьому, якщо я правильно зрозумів ось це

arrA/2

то перш ніж заносити значення в масив arrB, вам треба поділити їх (кожне окремо) на 2.

В результаті у вас має бути масив arrB зі значеннями

[4,6,12]
Подякували: oksanasurotiyk1

3 Востаннє редагувалося P.Y. (29.07.2021 14:10:10)

Re: використання циклу for з масивом даних.

Завдання стосується циклу for. Якщо ми хочемо в цьому циклі обробити всі елементи масиву, це можна зробити кількома способами.

По-перше, можна просто перебрати всі числа, які можуть бути номерами елементів — у даному випадку, якщо масив складається з трьох елементів, це всі цілі числа, починаючи від 0, менші за 3. Заголовок циклу виглядатиме так:

for(i=0; i<3; i++)

Такий цикл годиться лише для випадку, якщо кількість елементів дорівнює трьом. Якщо ж розмір масиву може бути іншим, доведеться або руками вписати потрібне число, або застосувати більш універсальний підхід, коли розмір масиву визначається автоматично, використовуючи властивість length:

for(i=0; i<a.length; i++)

Нарешті, в JS існує ще один варіант циклу for, який автоматично вибирає всі можливі індекси заданого масиву:

for(i in a)

(Останній варіант специфічний для JS. Подібні цикли існують і в багатьох інших мовах, але здебільшого працюють по іншому — перебирають не індекси, а значення або пари індекс:значення).

У всіх трьох випадках, робота циклу відбуватиметься приблизно однаково: змінна i отримає значення 0, 1, 2, з якими буде виконано тіло циклу. Саме тіло циклу буде максимально простим: ми беремо i-ий елемент з масиву a й записуємо в масив b:

b[i]=a[i]

JavaScript — мова достатньо розумна, тому розмір масиву b буде автоматично змінено до потрібного для запису кожного елемента — додатково задавати його розмір необхідності нема.
Інший спосіб запису — за допомогою метода push, який дописує новий елемент у кінець масиву:

b.push(a[i])

P.S. Якщо там треба не просто скопіювати елементи, а ще й поділити їх на 2, то в тілі циклу замість а[і] має бути а[і]/2

4

Re: використання циклу for з масивом даних.

P.Y. написав:

Останній варіант специфічний для JS. Подібні цикли існують і в багатьох інших мовах, але здебільшого працюють по іншому — перебирають не індекси, а значення або пари індекс:значення

то в інших мовах теж є

for (let i of a)

?

Подякували: P.Y.1

5 Востаннє редагувалося P.Y. (29.07.2021 14:33:27)

Re: використання циклу for з масивом даних.

Не знав про цей різновид циклу. Пітонівський for I in A робить те ж саме, що й JSівський for(I of A), також див. foreach у php, for(I:A) y Java тощо.