Глава 3. Программирование на языках JavaScript и Pascal § 25 Динамические массивы. Стеки. Списки.
Download ReportTranscript Глава 3. Программирование на языках JavaScript и Pascal § 25 Динамические массивы. Стеки. Списки.
Глава 3. Программирование на языках JavaScript и Pascal § 25 Динамические массивы. Стеки. Списки Динамический массив – массив, количество элементов которого может меняться при исполнении программы Объявление «пустого» массива: mas = new Array(); Количество элементов массива просто не указывается Стек – динамический массив, для которого возможны только две операции: • удалить из массива последний элемент; • добавить новый элемент в конец массива Метод pop() Удаляет последний элемент массива и возвращает его значение mas.pop(); Метод push(n) Добавляет значение переменной n в конец массива и возвращает новую длину массива mas.push(10); Список (линейный список) Метод splice() – динамический массив, для которого возможны добавлен в браузерах только две операции: Microsoft Internet Explorer • удалить любой элемент массива; начиная с версии 5.5 • добавить новый элемент в любое место массива Метод splice(n,1) Удаляет элемент массива с индексом n и возвращает его значение mas.splice(n,1); Метод splice(n,0,m) Добавляет значение переменной m перед элементом с индексом n mas.splice(n,0,m); Вопросы и задания 1. Что такое динамический массив? 2. Сколько элементов имеет массив, который определен командой a = new Array() ? 3. Что такое стек? 4. Что такое линейный список? Вопросы и задания 5. Задан числовой массив (стек) с целыми числами. Составьте программу, с помощью которой можно: 1) создать из чисел исходного массива два новых массива (стека), один с положительными числами, другой с отрицательными, и вывести на экран все три массива; 2) создать из чисел исходного массива два новых массива (стека), один с четными числами, другой с нечетными, и вывести на экран все три массива; 3) создать из чисел массива новый массив (стек), в котором положительные и отрицательные числа из первого массива сначала чередуются, а затем идут те, которых было больше, и вывести оба массива на экран; 4) * создать из чисел массива новый массив (стек), в который вошли только положительные четные числа, и вывести оба массива на экран. Вопросы и задания 6. Заданы два числовых массива (стека) одинаковой длины с целыми числами. Составьте программу, с помощью которой можно: 1) все числа из первого массива переписать во второй массив и вывести на экран три массива (два исходных и результат); 2) создать третий массив (стек), каждый элемент которого содержит произведение соответствующих элементов исходных массивов, и вывести на экран все три массива; 3) все числа из первого стека переписывать во второй стек до тех пор, пока значение последнего элемента первого стека не окажется четным, и вывести на экран четыре стека (два исходных и два измененных). Вопросы и задания 7. Задан числовой массив (список) с целыми числами. Составьте программу, с помощью которой можно: 1) продублировать в массиве первый и последний элементы (вставить перед теми, что уже есть, точно такие же) и вывести на экран два массива (исходный и результат); 2) создать массив (список), в котором записаны все элементы исходного списка с нечетными индексами, и вывести на экран оба массива; 3) создать массив (список), в котором записаны все элементы исходного списка с четными значениями, и вывести на экран оба массива; 4) создать массив (список), в котором записаны и продублированы все элементы исходного списка с четными индексами, и вывести на экран оба массива; Вопросы и задания 7. 5) создать массив (список), в котором записаны и продублированы все элементы исходного списка с нечетными значениями, и вывести на экран оба массива; 6) создать массив (список), в котором сначала идут элементы исходного массива с четными значениями, а потом с нечетными, и вывести на экран оба массива; 7) создать массив (список), в котором сначала идут элементы исходного массива с нечетными индексами, а потом с четными, и вывести на экран оба массива; 8) если указаны два индекса i и j (i < j), создать новый массив (список), в котором сначала идут элементы исходного массива с индексами от i до j, затем элементы с индексами менее i (если таковые есть) и элементы с индексами более j (если таковые есть), а затем вывести на экран оба массива.