You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/ru/2-js-basics/4-arrays-loops/assignment.md

9.1 KiB

Массивы и циклы: задание

Инструкции

Выполните следующие упражнения, чтобы попрактиковаться в работе с массивами и циклами. Каждое упражнение основано на концепциях из урока и побуждает вас применять различные типы циклов и методы массивов.

Упражнение 1: Генератор числовых последовательностей

Создайте программу, которая выводит каждое третье число в диапазоне от 1 до 20 и печатает его в консоль.

Требования:

  • Используйте цикл for с пользовательским шагом
  • Отображайте числа в удобном для пользователя формате
  • Добавьте описательные комментарии, объясняющие вашу логику

Ожидаемый результат:

3, 6, 9, 12, 15, 18

Совет: Измените выражение итерации в вашем цикле for, чтобы пропускать числа.

Упражнение 2: Анализ массива

Создайте массив из как минимум 8 различных чисел и напишите функции для анализа данных.

Требования:

  • Создайте массив с именем numbers, содержащий как минимум 8 значений
  • Напишите функцию findMaximum(), которая возвращает наибольшее число
  • Напишите функцию findMinimum(), которая возвращает наименьшее число
  • Напишите функцию calculateSum(), которая возвращает сумму всех чисел
  • Протестируйте каждую функцию и выведите результаты

Дополнительное задание: Создайте функцию, которая находит второе по величине число в массиве.

Упражнение 3: Обработка строкового массива

Создайте массив ваших любимых фильмов/книг/песен и потренируйтесь использовать различные типы циклов.

Требования:

  • Создайте массив, содержащий как минимум 5 строковых значений
  • Используйте традиционный цикл for, чтобы вывести элементы с номерами (1. Название элемента)
  • Используйте цикл for...of, чтобы вывести элементы в верхнем регистре
  • Используйте метод forEach() для подсчета и вывода общего количества символов

Пример результата:

Traditional for loop:
1. The Matrix
2. Inception
3. Interstellar

For...of loop (uppercase):
THE MATRIX
INCEPTION
INTERSTELLAR

Character count:
Total characters across all titles: 42

Упражнение 4: Фильтрация данных (продвинутый уровень)

Создайте программу, которая обрабатывает массив объектов, представляющих студентов.

Требования:

  • Создайте массив из как минимум 5 объектов студентов с свойствами: name, age, grade
  • Используйте циклы, чтобы найти студентов, которым 18 лет и больше
  • Рассчитайте средний балл всех студентов
  • Создайте новый массив, содержащий только студентов с оценками выше 85

Пример структуры:

const students = [
  { name: "Alice", age: 17, grade: 92 },
  { name: "Bob", age: 18, grade: 84 },
  // Add more students...
];

Тестирование вашего кода

Протестируйте свои программы, выполняя следующие шаги:

  1. Запустите каждое упражнение в консоли вашего браузера
  2. Убедитесь, что результаты соответствуют ожидаемым
  3. Протестируйте с различными наборами данных
  4. Проверьте, как ваш код обрабатывает крайние случаи (пустые массивы, одиночные элементы)

Руководство по сдаче

Включите в свою сдачу:

  • Хорошо прокомментированный JavaScript-код для каждого упражнения
  • Скриншоты или текстовый вывод, показывающий выполнение ваших программ
  • Краткое объяснение, какой тип цикла вы выбрали для каждой задачи и почему

Критерии оценки

Критерий Отлично (3 балла) Удовлетворительно (2 балла) Требует улучшения (1 балл)
Функциональность Все упражнения выполнены правильно, включая дополнительные задания Все обязательные упражнения работают правильно Некоторые упражнения не завершены или содержат ошибки
Качество кода Чистый, хорошо организованный код с описательными именами переменных Код работает, но может быть более чистым Код неаккуратный или трудный для понимания
Комментарии Полные комментарии, объясняющие логику и решения Присутствуют базовые комментарии Минимум комментариев или их отсутствие
Использование циклов Демонстрирует понимание различных типов циклов и их правильное применение Циклы используются правильно, но с ограниченным разнообразием Неправильное или неэффективное использование циклов
Тестирование Доказательства тщательного тестирования с множеством сценариев Продемонстрировано базовое тестирование Мало доказательств тестирования

Вопросы для размышления

После выполнения упражнений подумайте:

  1. Какой тип цикла оказался наиболее удобным для использования и почему?
  2. С какими трудностями вы столкнулись при работе с массивами?
  3. Как эти навыки могут быть применены в реальных проектах веб-разработки?
  4. Что бы вы сделали иначе, если бы вам нужно было оптимизировать ваш код для повышения производительности?

Отказ от ответственности:
Этот документ был переведен с использованием сервиса автоматического перевода Co-op Translator. Несмотря на наши усилия обеспечить точность, автоматические переводы могут содержать ошибки или неточности. Оригинальный документ на его родном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется профессиональный перевод человеком. Мы не несем ответственности за любые недоразумения или неправильные интерпретации, возникающие в результате использования данного перевода.