Реализовать алгоритм. Дано два массива чисел с индексами от 0 до N, необходимо вывести на экран все числа, которые одновременно присутствуют в обоих массивах.
Решение задачи оформить в виде кода на javascript.
Алгоритм решения. Нужно сравнить каждое значение массива 1 с каждым значением массива 2. Т.е. сначала берем первый элемент массива 1 и сравниваем его со значениями массива 2. Если во втором массиве находится такое же число, то помещаем его в результирующую строку для последующего вывода на экран. Берем второй элемент массива 1 и сравниваем его со значениями из массива 2… И т.д. пока не будут пройдены все элементы массива 1.
Реализуется данный алгоритм с помощью вложенных циклов. Внешний цикл – проход по элементам массива 1; внутренний – цикл – проход по элементам массива 2.
Ниже представлен код на javascript с подробными комментариями.
/* объявляем исходные массивы и присваиваем им произвольные значения
* в образовательных целях массивы объявлены по разному -
* двумя эквивалентными способами
* (лучше использовать первый, но знать и о втором)
*/
var array_1 = [1, 2, 3, 5, 7, 9, 10];
var array_2 = new Array(1, 4, 3, 5, 8, 9, 0);
/* объявляем строковую переменную для результатов
* и присваиваем ей пустое значение
*/
var str_res = '';
/* метод перебора во вложенных циклах */
for (var i in array_1) {
for (var j in array_2) {
/* сравнение текущего значения i-ого элемента массива 1
* со значением j-ого элемента массива 2
*/
if (array_1[i] == array_2[j]) {
/* если значения совпали, то помещаем данное число
* в результирующую строку str_res
* и после значения добавляем разделитель - '; '
* точку с запятой и пробел,
* чтобы наша результирующая строка красивей и
* читабельней выглядела на экране
*/
str_res += array_1[i] + '; ';
}
}
}
// выводим результирующую строку на экран
alert(str_res);
Решение не претендует на уникальность. Надеюсь, достаточно подробно и понятно описал.