搜索插件、代码仓与 APP 分类

插件详情v2.1.0

sudoku_api

sudoku_api 简化了数独谜题的生成、交互和管理。

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
46
喜欢数
23
Pub 分数
130

安装插件

flutter pub add sudoku_api

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

sudoku_api 是一个 Flutter/Dart 包,旨在简化应用程序中 Sudoku 难题的创建、操作和管理。它为开发者提供了生成有效 Sudoku 网格、验证解决方案以及高效处理谜题状态的工具。非常适合开发基于逻辑的拼图应用的游戏开发者,支持 Android、iOS、Web、macOS、Windows 和 Linux 多个平台。该包轻量级,并可通过 pub.dev 轻松集成到 Flutter 项目中。其简洁的 API 使得谜题生成和用户交互功能的实现变得简单易行。

适合场景

  • 将数独谜题整合到移动游戏中
  • 构建具有逻辑挑战的教育应用程序
  • 创建基于网络的拼图平台
  • 开发跨平台拼图应用程序
  • 实现动态拼图生成
  • 添加交互式数独求解功能

主要特点

  • 轻松生成谜题
  • 解决方案验证
  • 跨平台支持
  • 轻便高效
  • 简单 API 集成
  • 拼图的状态管理

适合对象

  • 游戏开发者
  • 教育类应用程序开发者
  • 解谜爱好者
  • Flutter 初学者
  • 跨平台应用程序构建工具

使用建议

  • 需要理解数独规则
  • 限制为标准的9x9网格
  • 无内置 UI 组件
  • 依赖外部状态管理
  • 未针对大规模拼图数据库进行优化
  • 基础版本中无法自定义难度等级

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

Simple, dart API for Sudoku puzzles

Introduction

sudoku_api simplifies the generation, interaction, and management of Sudoku Puzzles.

Well, how does it do that?

  • Contains a Built-in solver for generating new puzzles, or solving existing ones
  • Utilizes and exposes event streams for grid interactions (e.g. cell value changed), and puzzle states
  • Exposes a bunch of neat, easy to use models manipulating Cells, Positions, Grids, and even Patterns of a Sudoku puzzle
What is Sudoku?

... a logic-based, combinatorial number-placement puzzle. The objective is to fill a 9×9 grid with digits so that each column, each row, and each of the nine 3×3 subgrids (segments) that compose the grid contain all of the digits from 1 to 9. The puzzle setter provides a partially completed grid, which for a well-posed puzzle has a single solution.

Example


import 'package:sudoku_api/Puzzle.dart';

void main() {
  
  PuzzleOptions puzzleOptions = new PuzzleOptions(patternName: "winter");
  
  Puzzle puzzle = new Puzzle(puzzleOptions);
  
    puzzle.generate().then((_) {
      print("=====================================");
      print("Your puzzle, fresh off the press:");
      print("-------------------------------------");
      printGrid(puzzle.board());
      print("=====================================");
      print("Give up? Here's your puzzle solution:");
      print("-------------------------------------");
      printGrid(puzzle.solvedBoard());
      print("=====================================");
    });
}
Output
=====================================
Your puzzle, fresh off the press:
-------------------------------------
  9           8   
3 4     7     6 9 
    8   5   1     
      4   5       
4 5 6   9   3 1 2 
      3   2       
    2   8   9     
8 3     2     7 5 
  6           2   
=====================================
Give up? Here's your puzzle solution:
-------------------------------------
2 9 1 6 3 4 5 8 7 
3 4 5 1 7 8 2 6 9 
6 7 8 2 5 9 1 3 4 
1 2 3 4 6 5 7 9 8 
4 5 6 8 9 7 3 1 2 
7 8 9 3 1 2 4 5 6 
5 1 2 7 8 6 9 4 3 
8 3 4 9 2 1 6 7 5 
9 6 7 5 4 3 8 2 1 
=====================================
Contributing

Let's make some sweet Sudoku, together.

  1. Fork sudoku_api, clone, and checkout the dev branch
  2. Write some pretty neat code, then push
  3. Create a pull request from a fork
Implementations

Sudoku Toolkit (AlvinRamoutar) - WIP

Inspiration

One of my college projects; Java Sudoku.

Libraries

所属分类

依赖

依赖清单 3 项

源码仓库

使用此插件的项目

暂无相关数据。