gpt4 book ai didi

计划, Racket 帮助。想要返回符合条件的数字

转载 作者:太空宇宙 更新时间:2023-11-03 19:01:47 27 4
gpt4 key购买 nike

代码如下:

(define make-simple-sv-num
(lambda (delare)
(let ((tal (random-from-to 100000 1000000)))
(cond ((= (divisible? (sum-of-digits tal) delare) #t) tal)
(else (make-simple-sv-num))))))

所以我的规范是生成一个随机的 6 位数字,它也可以被输入变量“delare”整除。

我对代码的思考过程是将“tal”绑定(bind)到随机数,然后在计算中使用它,如果它检查出来,它将返回“tal”中的数字。但是,如果它不满足条件,它将调用自己,我的想法是,当它这样做时,它会给“tal”一个新的随机数并继续这样做直到满足条件,从而给我想要的数字类型。

我收到这个错误,我不知道如何修复它

=: contract violation
expected: number?
given: #t
argument position: 1st
other arguments...:

最佳答案

我认为您的代码可以更简单,就像:

(define (make-simple-sv-num declare)
(let ([tal (random-from-to 100000 1000000)])
(if (divisible? (sum-of-digits tal) delare)
tal
(make-simple-sv-num declare))))

关于计划, Racket 帮助。想要返回符合条件的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41913609/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com