用Python学数学(全彩印刷)/图灵程序设计丛书
- ISBN:9787115562425
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:262
- 出版时间:2021-05-01
- 条形码:9787115562425 ; 978-7-115-56242-5
本书特色
1.用Python体验“全新”的数学 不为解题,不记公式,彻底摆脱枯燥——纯粹好玩,自由发挥想象,自己动手制作趣味数学 2.用Python让数学活起来 看得见动起来充满立体感的“活”数学,像魔法一样解决常见数学问题 3.涵盖中学数学重要主题,如代数学、几何学、三角学和微积分 4.各种让人欲罢不能的案例,编程与数学强强联合 本书以趣味探险路线展示案例,让你真正领略数学的实用性与编程的趣味性 5.Python 3案例,充分展示Python特色与Python可视化的强大
内容简介
本书向读者展示如何利用编程来让数学学习变得有意义并且充满乐趣。读者在探索代数学、几何学、三角学、矩阵和元胞自动机等领域的关键数学概念时,将学会在Python语言的帮助下使用代码可视化一系列数学问题的解决方案。读完本书,读者还可以编写自己的程序来快速解方程,自动完成一些烦琐的任务,以及编写函数来绘制和操作形状,等等。 本书适合所有对数学感兴趣的人和数学教师阅读。
目录
第 1章 用turtle模块绘制多边形 2
1.1 Python的turtle模块 2
1.1.1 导入turtle模块 3
1.1.2 让小海龟动起来 3
1.1.3 改变方向 5
1.2 用循环使代码重复运行 5
1.2.1 使用for循环 6
1.2.2 运用for循环画一个正方形 7
1.3 用函数创建快捷操作 8
1.4 利用变量画出不同的图形 9
1.4.1 在函数中使用变量 10
1.4.2 变量错误 10
1.5 等边三角形 11
1.5.1 编写triangle()函数 12
1.5.2 让变量变起来 12
1.6 小结 15
第 2章 用列表和循环把烦琐的算术变有趣 17
2.1 基本运算符 17
2.1.1 变量运算 18
2.1.2 用运算符编写函数average() 19
2.1.3 注意运算顺序 19
2.1.4 结合使用括号和运算符 19
2.2 Python中的数据类型 20
2.2.1 整数和浮点数 20
2.2.2 字符串 20
2.2.3 布尔类型 22
2.2.4 查看数据类型 22
2.3 用列表存储值 23
2.3.1 向列表添加项 23
2.3.2 列表的运算 24
2.3.3 从列表中删除项 25
2.4 在循环中使用列表 25
2.4.1 使用列表索引访问单个项 26
2.4.2 用enumerate()函数获取索引和值 26
2.4.3 索引从0开始 27
2.4.4 访问一系列列表项 27
2.4.5 查找某项的索引 28
2.4.6 字符串也有索引 29
2.5 求和 29
2.5.1 创建running_sum变量 30
2.5.2 编写mySum()函数 30
2.6 求一列数的平均值 32
2.7 小结 33
第3章 用条件语句检验猜测 34
3.1 比较运算符 34
3.2 用if和else语句做决定 35
3.3 使用条件语句求因数 36
3.3.1 编写factors.py程序 37
3.3.2 海龟漫步 38
3.4 制作一个猜数游戏 40
3.4.1 制作一个随机数生成器 41
3.4.2 读取用户输入 41
3.4.3 将用户输入转换成整数 42
3.4.4 用条件语句检查猜测是否正确 42
3.4.5 用循环给予更多猜测机会 43
3.4.6 猜数小提示 44
3.5 计算平方根 45
3.5.1 套用猜数游戏的逻辑 45
3.5.2 编写squareRoot()函数 46
3.6 小结 47
第4章 用代数学变换和存储数 50
4.1 解一次方程 51
4.1.1 一次方程的解法公式 52
4.1.2 编写equation()函数 53
4.1.3 用print()替换return 53
4.2 解更高次的方程 55
4.2.1 用quad()函数解二次方程 56
4.2.2 用plug()函数解三次方程 57
4.3 用作图法解方程 58
4.3.1 Processing入门 58
4.3.2 制作你自己的作图工具 59
4.3.3 绘制方程的图像 66
4.3.4 用“猜测检验法”求根 70
4.3.5 编写guess()函数 70
4.4 小结 72
第5章 用几何学变换形状 73
5.1 画一个圆 73
5.2 用坐标指定位置 75
5.3 变换函数 76
5.3.1 用translate()函数平移对象 76
5.3.2 用rotate()旋转对象 79
5.3.3 画一圈圆 80
5.3.4 画一圈正方形 81
5.4 使对象动画化 82
5.4.1 创建变量t 82
5.4.2 旋转各个正方形 83
5.4.3 用pushMatrix()和popMatrix()保存方位 84
5.4.4 使正方形绕中心旋转 85
5.5 制作一个可交互的彩虹网格 86
5.5.1 画出呈网格状排列的对象 86
5.5.2 给对象涂上彩虹色 87
5.6 用三角形画出复杂的图案 89
5.6.1 30-60-90三角形 91
5.6.2 画一个等边三角形 92
5.6.3 画多个旋转的三角形 94
5.6.4 给旋转加上相位偏移 95
5.6.5 将图案画完 96
5.7 小结 98
第6章 用三角学制造振荡 99
6.1 用三角学做旋转和振荡 101
6.2 编写画多边形的函数 102
6.2.1 用循环画一个正六边形 103
6.2.2 画一个正三角形 105
6.3 画正弦波 106
6.3.1 圆过留痕 109
6.3.2 使用Python内置的enumerate()函数 110
6.4 编写万花尺程序 112
6.4.1 画小圆 113
6.4.2 旋转小圆 113
6.5 画谐波图 116
6.5.1 编写画谐波图的程序 117
6.5.2 瞬间填好列表 119
6.5.3 两个钟摆比一个强 120
6.6 小结 122
第7章 复数 123
7.1 复数坐标系 124
7.2 将复数相加 124
7.3 将一个复数乘以i 125
7.4 将两个复数相乘 126
7.5 编写magnitude()函数 127
7.6 创建芒德布罗集 128
7.6.1 编写mandelbrot()函数 130
7.6.2 给芒德布罗集上色 134
7.7 创建茹利亚集 135
7.8 小结 137
第8章 将矩阵用于计算机图形和方程组 138
8.1 什么是矩阵 138
8.2 矩阵相加 139
8.3 矩阵相乘 140
8.4 矩阵乘法中的顺序很重要 144
8.5 画2D形状 144
8.6 变换矩阵 147
8.7 转置矩阵 149
8.8 实时旋转矩阵 152
8.9 制作3D形状 154
8.10 制作旋转矩阵 155
8.11 用矩阵解方程组 159
8.11.1 高斯消元法 159
8.11.2 编写gauss()函数 161
8.12 小结 165
第9章 用类构建对象 168
9.1 弹跳球程序 170
9.1.1 让小球动起来 171
9.1.2 让小球从墙上弹回 172
9.1.3 不用类创建多个小球 173
9.1.4 用类创建对象 174
9.2 “羊吃草”程序 179
9.2.1 编写表示小羊的类 179
9.2.2 让小羊四处走动. 180
9.2.3 添加能量属性 181
9.2.4 用类创建草 182
9.2.5 让草被吃掉后变成棕色 185
9.2.6 给每只小羊涂上随机的颜色 187
9.2.7 让小羊繁殖 188
9.2.8 让草再生 189
9.2.9 给予进化优势 190
9.3 小结 191
第 10章 用递归制作分形 193
10.1 海岸线的长度 194
10.1.1 何为递归 195
10.1.2 编写factorial()函数 195
10.1.3 “种”一棵分形树 196
10.2 科赫雪花 200
10.3 谢尔宾斯基三角形 205
10.4 正方形分形 207
10.5 龙形曲线 211
10.6 小结 215
第 11章 元胞自动机 216
11.1 创建一个元胞自动机 217
11.1.1 编写一个细胞类 219
11.1.2 调整细胞大小 221
11.1.3 让CA生长 222
11.1.4 将细胞放入一个矩阵 223
11.1.5 创建细胞列表 224
11.2 奇怪的Python列表 225
11.2.1 列表切片 226
11.2.2 让你的CA自动生长 229
11.3 玩玩“生命游戏” 229
11.4 初等元胞自动机 232
11.5 小结 237
第 12章 用遗传算法解决问题 238
12.1 用遗传算法猜出句子 239
12.1.1 编写makeList()函数 239
12.1.2 测试makeList()函数 240
12.1.3 编写score()函数 241
12.1.4 编写mutate()函数 241
12.1.5 生成随机数 242
12.2 解决旅行商问题 244
12.2.1 使用遗传算法 245
12.2.2 编写calcLength()方法 251
12.2.3 测试calcLength()方法 251
12.2.4 随机路线 252
12.2.5 运用猜句程序的突变思想 255
12.2.6 突变列表中的两个数 255
12.2.7 通过交叉改进路线 259
12.3 小结 261
作者简介
【作者简介】彼得.法雷尔(Peter Farrell)数学和计算机科学教师,热衷于“定制”数学和技术教学。他开设了一门名为Hacking Math的课程,利用编程技术让学生见识“活生生”的数学,广受欢迎。本书是他近十年教学实践的结晶,手把手带你让数学“活”起来,真正体会数学之美。【译者简介】严开本科就读于英国格拉斯哥大学,研究生即将入读中科院计算所。对于数学与编程的交叉领域兴趣浓厚,毕业设计项目:Coding a Modesolver in Python(实现了一个解电磁微分方程的程序)。
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥77.4¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
Go 语言运维开发 : Kubernetes 项目实战
¥48.2¥79.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0