make zh2tw

This commit is contained in:
chai2010
2015-12-21 12:52:25 +08:00
parent 14665b4d9c
commit d024df28e9
7 changed files with 131 additions and 131 deletions

View File

@@ -1,7 +1,7 @@
## 3.3. 複數
Go提供了两种精度的复数类似, complex64 和 complex128, 分别对应 float32 和 float64精度. 置的 complex 函数用于构建复数, 建的 real 和 imag 函数返回复数的实部和部:
Go提供了兩種精度的複數類似, complex64 和 complex128, 分别對應 float32 和 float64精度. 置的 complex 函數用於構建複數, 建的 real 和 imag 函數返迴複數的實部和部:
```Go
var x complex128 = complex(1, 2) // 1+2i
@@ -11,28 +11,28 @@ fmt.Println(real(x*y)) // "-5"
fmt.Println(imag(x*y)) // "10"
```
如果一个浮点数面值或一个十进制整数面值面跟着一i, 例如 3.141592i 或 2i, 它将构成一个复数的虚部, 复数的实部是0:
如果一個浮點數面值或一個十進製整數面值面跟着一i, 例如 3.141592i 或 2i, 它將構成一個複數的虛部, 複數的實部是0:
```Go
fmt.Println(1i * 1i) // "(-1+0i)", i^2 = -1
```
在常量算术规则下, 一个复数常量可以加到另一常量(整或浮点数, 部或部), 我可以用自然的方式写复数, 就像 1+2i, 或之等价的写法 2i+1. 上面x和y的声明语句还可以化:
在常量算術規則下, 一個複數常量可以加到另一常量(整或浮點數, 部或部), 我可以用自然的方式寫複數, 就像 1+2i, 或之等價的寫法 2i+1. 上面x和y的聲明語句還可以化:
```Go
x := 1 + 2i
y := 3 + 4i
```
复数也可以用 == 和 != 行相等比. 只有两个复数的实部和部都相等的候它们才是相等的.
複數也可以用 == 和 != 行相等比. 隻有兩個複數的實部和部都相等的候它們纔是相等的.
math/cmplx 包提供了复数处理的多函, 例如求复数的平方根函和求幂函数.
math/cmplx 包提供了複數處理的多函, 例如求複數的平方根函和求冪函數.
```Go
fmt.Println(cmplx.Sqrt(-1)) // "(0+1i)"
```
下面的程序使用complex128复数算法生成一Mandelbrot像.
下面的程序使用complex128複數算法生成一Mandelbrot像.
```Go
gopl.io/ch3/mandelbrot
@@ -83,19 +83,19 @@ func mandelbrot(z complex128) color.Color {
}
```
1024x1024像每个点的两个嵌套的循环对应 -2 到 +2 区间的复数平面. 程序反复测试每个点对应复数值平方值加一增量值对应的点是否超出半径为2的. 如果超了, 通过根据逃逸的迭代次数对应的灰度颜色来代替. 如果不是, 该点属于Mandelbrot集合, 使用黑色颜色标记. 最程序生成的PNG格式分形图像图像输出到标准输出, 如3.3所示.
1024x1024像每個點的兩個嵌套的循環對應 -2 到 +2 區間的複數平面. 程序反複測試每個點對應複數值平方值加一增量值對應的點是否超齣半徑爲2的. 如果超了, 通過根據逃逸的迭代次數對應的灰度顔色來代替. 如果不是, 該點屬於Mandelbrot集合, 使用黑色顔色標記. 最程序生成的PNG格式分形圖像圖像輸齣到標準輸齣, 如3.3所示.
**练习3.5:** 实现一个彩色的Mandelbrot像, 使用 image.NewRGBA 创建图像, 使用 color.RGBA 或 color.YCbCr 生成色.
**練習3.5:** 實現一個綵色的Mandelbrot像, 使用 image.NewRGBA 創建圖像, 使用 color.RGBA 或 color.YCbCr 生成色.
**练习3.6:** 超采样技术可以降低每像素对计算颜色值和平均值的影. 简单的方法是将每个像素分层四个子像素, 实现它.
**練習3.6:** 超采樣技術可以降低每像素對計算顔色值和平均值的影. 簡單的方法是將每個像素分層四個子像素, 實現它.
**练习3.7:** 另一生成分形像的方式是使用牛顿法来求解一个复数方程, 例如 z^4 1 = 0. 每个起点到四根的迭代次数对应阴影的灰度. 方程根对应的点用颜色表示.
**練習3.7:** 另一生成分形像的方式是使用牛頓法來求解一個複數方程, 例如 z^4 1 = 0. 每個起點到四根的迭代次數對應陰影的灰度. 方程根對應的點用顔色表示.
![](../images/ch3-03.png)
**练习3.8:**提高精度生成更多别的分形. 使用四不同精度型的数字实现相同的分形: complex64, complex128, big.Float, and big.Rat. (后面两种类型在 math/big 包明. Float是有指定限精度的浮点数; Rat是效精度的有理.) 它们间的性能和存使用比如何? 渲染图可见时缩放的别是多少?
**練習3.8:**提高精度生成更多别的分形. 使用四不同精度型的數字實現相同的分形: complex64, complex128, big.Float, and big.Rat. (後面兩種類型在 math/big 包明. Float是有指定限精度的浮點數; Rat是效精度的有理.) 它們間的性能和存使用比如何? 渲染圖可見時縮放的别是多少?
**练习3.9:** 编写一个web服器, 用于给客户端生成分形的像. 行客端用HTTP参数参数指定x,y和zoom参数.
**練習3.9:** 編寫一個web服器, 用於給客戶端生成分形的像. 行客端用HTTP參數參數指定x,y和zoom參數.