CS 笔记

第一章 构造函数抽象

本章论述了如何利用编程语言中对函数对具体问题计算过程进行抽象,引入迭代和递归的概念,并着重介绍了相关计算过程。

笔记

练习解答

题目参考《计算机程序的构造与解释 JavaScript 版》

练习 1.2

5 + 4 + ((2 - (3 - (6 + 4 / 5))) / 3) * (6 - 2) * (2 - 7);

练习 1.3

function squareSum(x, y, z) {
  return x * x + y * y + z * z - Math.min(x, y, z) * Math.min(x, y, z);
}

练习 1.4

和字面意思一样,该函数返回 a 与 b 的绝对值只和。

练习 1.8

function cubeRoot(x) {
  function is_good_enough(guess) {
    return Math.abs(cube(guess) - x) < 0.001;
  }

  function improve(guess) {
    return (x / (guess * guess) + 2 * guess) / 3;
  }

  function cube(x) {
    return x * x * x;
  }

  function cubeRoot_iter(guess) {
    return is_good_enough(guess) ? guess : cubeRoot_iter(improve(guess));
  }

  return cubeRoot_iter(1.0);
}

console.log(cubeRoot(27));

练习 1.9

Res-1-9

On this page