Scheme代码解析:(apply + (list 8 9 7 6 5 4 6 (apply * (list 2 3))))
Scheme代码解析:(apply + (list 8 9 7 6 5 4 6 (apply * (list 2 3))))
这段Scheme代码看起来很复杂,但我们可以逐步分解它来理解其含义。
代码分解:
(list 2 3):创建一个包含元素2和3的列表。 2.(apply * (list 2 3)):apply函数将函数*(乘法)应用于列表(list 2 3), 计算2 * 3 = 6。 3.(list 8 9 7 6 5 4 6 (apply * (list 2 3))): 创建一个包含多个数字的列表,其中最后一个元素是上面计算出的6。 4.(apply + (list 8 9 7 6 5 4 6 (apply * (list 2 3)))):apply函数将函数+(加法) 应用于列表中的所有元素,计算8 + 9 + 7 + 6 + 5 + 4 + 6 + 6 = 51。
结果:
这段Scheme代码的计算结果是 51,而不是40。
原文地址: https://www.cveoy.top/t/topic/bRif 著作权归作者所有。请勿转载和采集!