```From: "M. Edward (Ed) Borasky" <znmeb / cesmail.net>
Subject: Re: Sodoku-Generator
Date: Mon, 20 Feb 2006 04:48:30 +0900

Hi Edward,

I found nothing at RAA/Rubyforge due to a typo I did:
S_u_doku is correct...I searched for "S_o_doku"....

Sorry for the trouble...

(rsudoku did not start, because it doesn't find a certain preference file
in my \$HOME. INSTALL says: Simpy start ruby rsudoku.rb.

I will check this..

Ruby!
mcc

> >From the R library package "sudoku":
>
> generateSudoku            package:sudoku            R Documentation
>
> Randomly Generate a Sudoku Puzzle Grid
>
> Description:
>
>      Creates a 9x9 Sudoku grid suitable for use by 'playSudoku'.
>
> Usage:
>
>        generateSudoku(Nblank=50, print.it=FALSE)
>
> Arguments:
>
>   Nblank: Number of cells to blank out
>
> print.it: Logical.  If true, print result to screen.
>
> Details:
>
>      The basic algorithm is to start with a 'primordial' Sudoku grid,
>      swap around some rows and columns, then blank out some cells.
>
> Value:
>
>      A matrix, representing a 9x9 Sudoku grid.
>
> Author(s):
>
>      Curt Seeliger <Seeliger.Curt / epamail.epa.gov>, Henrik Bengtsson
>      <hb / maths.lth.se>, and David Brahm <brahm / alum.mit.edu>
>
> References:
>
>      <URL: http://sudoku.com/>
>
> Examples:
>
>      generateSudoku(print.it=TRUE)
>
> Here's the function definition for those who understand R. I might make
> pseudo-code from this if I have the time:
>
> generateSudoku <- function(Nblank=50, print.it=FALSE) {
>   z <- c(1:9,4:9,1:3,7:9,1:6,2:9,1,5:9,1:4,8:9,1:7,3:9,1:2,6:9,1:5,9,1:8)
>   z <- matrix(sample(9)[z], 9,9)
>   for (i in 1:5) z <- z[replicate(3, sample(3)) + 3*rep(sample(0:2),
> each=3),
>                         replicate(3, sample(3)) + 3*rep(sample(0:2),
> each=3)]
>   for (bi in seq(0,6,3)) for (bj in seq(0,6,3)) {
>     idx <- data.matrix(expand.grid(bi + 1:3, bj + 1:3))
>     z[idx[sample(1:9, Nblank%/%9), ]] <- 0
>   }
>   ## Depopulate (if we had a test for uniqueness, we'd put it here):
>   while (sum(!z) < Nblank) z[matrix(sample(9,2), 1)] <- 0
>   if (print.it) printSudoku(z)
>   z
> }
>
>
>
> Meino Christian Cramer wrote:
> > Hi,
> >
> >  with Google I found a Quiz about a Sodoku-solver, but I didn't find a
> >  Sodoku generator. Also RAA and RubyForge did not list one.
> >
> >  Is there any out there ? May be one, which also generated a solution
> >  for the generated Sodokus?
> >
> >  Kind regards,
> >  mcc
> >
> >
> >
>
> --