Лабораторная работа 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) {}

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

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

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

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

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

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

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

Автор: к.п.н., Румянцев Сергей Александрович, доцент Финансового университета при Правительстве РФ; доцент ОЧУВО Международного инновационного университета; Консалтинг, управление разработкой ПО; системный и бизнес анализ; менеджмент; аналитиз данных; управление ИТ. Телефон для связи +79269444818 (мессенджеры)   Короткая ссылка:

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

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

Темы 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) {}

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

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

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

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

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

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

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

https://webprogr.ru/~7aeFl
Короткая ссылка на новость:https://webprogr.ru/~7aeFl


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

Лабораторная работа 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