Кросс-Word приложение в C#?
Привет,
Может ли кто-нибудь помочь мне в создании кроссвордного приложения? Я не уверен в том, как работает кросс-словесное приложение. Замечания также приветствуются.
Спасибо
Если я правильно вас понял, то предлагаю вам взглянуть на это http://en.wikipedia.org/wiki/Crossword[^] во-первых, чтобы увидеть различные типы сетки и как работает кроссворд.
Заставить это работать потенциально сложно (зависит от того, насколько глубоко вам нужно идти), но, как и все остальное, разбейте проблему, начните с малого и постройте свое решение шаг за шагом. Один вариант для начала нужно сделать следующее (предполагая, что вы не используете шведскую сетку):
Square
КлассBlackSquare
Класс для черных квадратовLetteredSquare
класс для квадратов "ответа" должен иметь свойство char для правильного символа и nullable interger для номера подсказкиGrid
Класс, который имеет двумерный массив Square
базовый класс.ClueNumber
, Direction
, Clue
текст и Answer
текст (возможно, массив символов, а не строка) Ответ Length
Он также должен иметь вращательную симметрию.
Хорошая мысль! В интересах ОП это легко достигается, если убедиться, что Григ может быть равномерно распределен (иметь четное количество квадратов с каждой стороны для практических целей и является квадратным). Поскольку черные заполнены, вам просто нужно повернуть положение для каждого оставшегося квадранта.
Пожалуйста, смотрите мой комментарий ниже.
--СА
Я не уверен в одном пункте: может быть, представление структуры данных в виде квадрата не самое лучшее. Лучше это будет концептуально бесконечное поле с динамически выделяемыми горизонтальными или вертикальными линейными объектами. Черный квадрат-это просто украшение, которое нужно добавить (или не поздно). Некоторые кроссворды используют форму, очень далекую от квадрата или прямоугольника. Кроме того, для построения оптимальных вариантов пересечения слов бесконечное поле подхода может обеспечить большую свободу.
--СА
Тем не менее, мои 5 за эти советы.
--СА