webprogr.ru Новости

RSS

{{toodo.preview}}

...
{{toodo.name}}

{{toodo.preview}}

далее..

{{toodo.preview}}

{{toodo.name}}

{{toodo.preview}}

смотреть..

toodo.name

{{toodo.preview}}

{{toodo.name}}

{{toodo.preview}}

перейти...

{{toodo.preview}}

...
{{toodo.name}}

{{toodo.preview}}

далее..

{{toodo.preview}}

{{toodo.name}}

{{toodo.preview}}

смотреть..

toodo.name

{{toodo.preview}}

{{toodo.name}}

{{toodo.preview}}

перейти...


Последние новости

Лабораторная работа II «Функции, массивы, рекурсия и отладка»

Лабораторная работа «Функции, массивы, рекурсия и отладка»

Цель: сформировать минимальные компетенции, необходимые для всех последующих лабораторных.

Темы JavaScript: объявление функций, параметры, возвращаемые значения, области видимости, массивы, индексирование, вложенные циклы, рекурсия, console.assert, пошаговая отладка.

Chrome DevTools позволяет устанавливать breakpoint и выполнять программу по шагам с наблюдением значений переменных, поэтому уже на этой работе студенту следует показать не только console.log, но и нормальную отладку. [4]

Задания:

реализовать самостоятельно, без готовых Math.max(...array) и готовой сортировки:

function arrayMin(a) {}
function arrayMax(a) {}
function arraySum(a) {}
function arrayMean(a) {}
function linearSearch(a, key) {}
function reverseArray(a) {}

Затем реализовать двумя способами:

  • факториал — итеративно и рекурсивно;

  • сумму массива — итеративно и рекурсивно;

  • числа Фибоначчи — наивной рекурсией и итеративно.

Главный результат — обнаружение того, что одинаковый математический результат ещё не означает одинаковую эффективность.

Дополнительное задание: подсчитать количество вызовов рекурсивной функции Фибоначчи.

Анализ: для каждой функции определить предварительную сложность: константная, линейная или «явно быстрее линейной».

Рейтинг@Mail.ru