sicp 4.3.1小节两题
程序员文章站
2022-03-11 07:50:00
...
本节开始介绍神奇的amb函数,为引入逻辑程序设计做铺垫。关于amb,有清华王垠的一个文档:
http://cs2.swfc.edu.cn/~wanghuan/wangyin1/amb/amb.html
4.35,与an-element-of类似:
4.36,与练习3.69相关,貌似我没解过这道题,略过。
4.37,两点大大缩小了搜索范围:
1)通过限制i^2+j^2<= high^2,平方和大于上限平方的全部过滤掉
2)k的判断不再通过amb取值,而是求平方和的平方根是否为整数来判断,进一步缩小了搜索范围
http://cs2.swfc.edu.cn/~wanghuan/wangyin1/amb/amb.html
4.35,与an-element-of类似:
<!---->(define (an-integer-between low high)
(require (not (> low high)))
(amb low (an-integer-between (+ low 1) high)))
(require (not (> low high)))
(amb low (an-integer-between (+ low 1) high)))
4.36,与练习3.69相关,貌似我没解过这道题,略过。
4.37,两点大大缩小了搜索范围:
1)通过限制i^2+j^2<= high^2,平方和大于上限平方的全部过滤掉
2)k的判断不再通过amb取值,而是求平方和的平方根是否为整数来判断,进一步缩小了搜索范围