РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
35 of 126 menu

Генератор кроссвордов

Реализуйте сайт, генерирующий уникальные кроссворды.

Основные возможности проекта

  • Добавление вопросов и ответов пользователем.
  • Хранение базы вопросов и ответов в localStorage.
  • Генерация кроссворда из добавленных слов.
  • Отображение сетки кроссворда и списка вопросов.

Управление словами

На странице должна быть форма для добавления новых слов в базу:

  • Вопрос (инпут).
  • Ответ (инпут) - слово, которое будет размещено в кроссворде.
  • Кнопка "Добавить".

Также должна быть таблица со списком всех добавленных слов с возможностью удаления.

Генерация кроссворда

По нажатию на кнопку "Сгенерировать кроссворд" из списка добавленных слов выбираются случайные 5-8 слов. Алгоритм размещения слов в сетке:

  • Разместить первое слово горизонтально в центре сетки.
  • Последовательно размещать остальные слова, подбирая пересечения с уже размещенными словами (по одной общей букве).
  • Слова размещаются по горизонтали или вертикали в зависимости от пересечений.
  • Пронумеровать ячейки, с которых начинаются слова.

Отображение кроссворда

Кроссворд должен отображаться в виде сетки:

  • Ячейки с буквами заполнены.
  • Пустые ячейки серого цвета.
  • Ячейки с номерами выделены.

Рядом с сеткой должны отображаться вопросы:

  • "По горизонтали" - список вопросов для слов, расположенных горизонтально.
  • "По вертикали" - список вопросов для слов, расположенных вертикально.

Хранение данных

Все добавленные слова и вопросы должны храниться в локальном хранилище браузера (localStorage). При повторном открытии страницы база слов должна сохраняться.

Дополнительные возможности

  • Очистка всей базы слов.
  • Режим проверки ответов (показ правильных букв).
  • Экспорт кроссворда в изображение.
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить