我正在尝试解决这个C问题,找到一个带有2个整数参数的函数,a和b并生成它们之间所有元素的范围,我试图在Racket中这样做。
这是我到目前为止所做的,我不知道如何继续前进。我需要使用可变变量吗?
(define (list-range a b)
(local [(define sum a)]
(build-list (+ (- a b) 1)
lambda (x y)
[(<= sum b)(+ sum 1)]
))
请帮助我理解并解决这个问题
答案 0 :(得分:1)
这会构建从from
包含到to
独占的列表。
包容性/独家性是Racket的惯例。
由于列表的事实,这是最方便的
指数从0开始。
#lang racket
(define (list-range from to)
(build-list (- to from)
(lambda (i) (+ from i))))
(list-range 5 7)
输出: &#39;(5 6)