Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
List 使用构建列表在球拍中创建一个n x n板_List_Function_Racket - Fatal编程技术网

List 使用构建列表在球拍中创建一个n x n板

List 使用构建列表在球拍中创建一个n x n板,list,function,racket,List,Function,Racket,所以我试图构建一个函数,在这个函数中,它根据输入的维度在一块板上创建一个位置列表 (定义(创建板尺寸)…) 其中,维度是1到9之间的数字,包括1到9 因此,输出将是一个电路板位置列表,其中电路板位置为2位数字,第一位数字为行号,第二位为列号 例如: (创建board 3)->(列表(列表11 12 13)(列表21 22 23)(列表31 32 33))) 此外,这应该在不使用递归或帮助函数的情况下完成,而只使用抽象列表函数。在Racket中,有一个非常惯用的解决方案,使用: 或者,仅使用基本列

所以我试图构建一个函数,在这个函数中,它根据输入的维度在一块板上创建一个位置列表

(定义(创建板尺寸)…)

其中,维度是1到9之间的数字,包括1到9

因此,输出将是一个电路板位置列表,其中电路板位置为2位数字,第一位数字为行号,第二位为列号

例如:

(创建board 3)->(列表(列表11 12 13)(列表21 22 23)(列表31 32 33)))


此外,这应该在不使用递归或帮助函数的情况下完成,而只使用抽象列表函数。

在Racket中,有一个非常惯用的解决方案,使用:

或者,仅使用基本列表过程:

(define (create-board dim)
  (map (lambda (i)
         (map (lambda (j) 
                (+ (* 10 i) j))
              (build-list dim add1)))
       (build-list dim add1)))
例如:

(create-board 3)
=> '((11 12 13) (21 22 23) (31 32 33))

对不起,我忘了补充一点,我只能在有Lambda的中级学生中这样做。因此,不会定义for/list。我知道有很多方法可以用完整的语言轻松做到这一点,但不幸的是,我受到限制,这就是我遇到麻烦的原因
(create-board 3)
=> '((11 12 13) (21 22 23) (31 32 33))