Skip to content

Commit b6d0825

Browse files
committed
修正了文档中数学公式无法显示的问题
1 parent 3f9c9e4 commit b6d0825

13 files changed

+141
-94
lines changed

Day01-20/04.Python语言中的运算符.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ print(1 > 2 or 2 == 3) # False
127127

128128
#### 例子1:华氏温度转摄氏温度
129129

130-
要求:输入华氏温度将其转换为摄氏温度,华氏温度到摄氏温度的转换公式为:$\small{C = (F - 32) / 1.8}$。
130+
要求:输入华氏温度将其转换为摄氏温度,华氏温度到摄氏温度的转换公式为: $\small{C = (F - 32) / 1.8}$
131131

132132
```python
133133
"""
@@ -161,7 +161,7 @@ print(f'{f:.1f}华氏度 = {c:.1f}摄氏度')
161161

162162
#### 例子2:计算圆的周长和面积
163163

164-
要求:输入一个圆的半径,计算出它的周长($\small{2 \pi r}$)和面积($\small{\pi r^{2}}$)。
164+
要求:输入一个圆的半径,计算出它的周长( $\small{2 \pi r}$ )和面积( $\small{\pi r^{2}}$ )。
165165

166166
```python
167167
"""
@@ -219,7 +219,7 @@ print(f'{area = :.2f}') # 输出:area = 95.03
219219
220220
#### 例子3:判断闰年
221221

222-
要求:输入一个1582年以后的年份,判断该年份是不是闰年。
222+
要求:输入一个 1582 年以后的年份,判断该年份是不是闰年。
223223

224224
```python
225225
"""

Day01-20/05.分支结构.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -320,9 +320,8 @@ if a + b > c and a + c > b and b + c > a:
320320
else:
321321
print('不能构成三角形')
322322
```
323-
> **说明:** 上面的`if` 条件表示任意两边之和大于第三边,这是构成三角形的必要条件。当这个条件成立时,我们要计算并输出周长和面积,所以`if`下方有五条语句都保持了相同的缩进,它们是一个整体,只要`if`条件成立,它们都会被执行,这就是我们之前提到的代码块的概念。另外,上面计算三角形面积的公式叫做海伦公式,假设有一个三角形,边长分别为 $\small{a}$ 、 $\small{b}$ 、 $\small{c}$ ,那么三角的面积 $\small{A}$ 可以由下面的公式得到,其中, $\small{s=\frac{a+b+c}{2}}$ 。
324-
>
325-
> $$
323+
> **说明:** 上面的`if` 条件表示任意两边之和大于第三边,这是构成三角形的必要条件。当这个条件成立时,我们要计算并输出周长和面积,所以`if`下方有五条语句都保持了相同的缩进,它们是一个整体,只要`if`条件成立,它们都会被执行,这就是我们之前提到的代码块的概念。另外,上面计算三角形面积的公式叫做海伦公式,假设有一个三角形,边长分别为 $\small{a}$ 、 $\small{b}$ 、 $\small{c}$ ,那么三角的面积 $\small{A}$ 可以由下面的公式得到,其中, $s=\frac{a + b + c}{2}$ 。
324+
>$$
326325
> A = \sqrt{s(s-a)(s-b)(s-c)}
327326
> $$
328327
>

Day01-20/06.循环结构.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ for _ in range(3600):
5858

5959
<img src="res/day06/terminate_program.png" style="zoom:40%;">
6060

61-
下面,我们用`for-in`循环实现从1到100的整数求和,即 $\small{\sum_{n=1}^{100}{n}}$ 。
61+
下面,我们用`for-in`循环实现从 1 到 100 的整数求和,即 $\small{\sum_{n=1}^{100}{n}}$ 。
6262

6363
```python
6464
"""
@@ -73,7 +73,7 @@ for i in range(1, 101):
7373
print(total)
7474
```
7575

76-
上面的代码中,变量`total`的作用是保存累加的结果。在循环的过程中,循环变量`i`的值会从`1`一直取到`100`。对于变量`i`的每个取值,我们都执行了`total += i`,它相当于`total = total + i`,这条语句实现了累加操作。所以,当循环结束,我们输出变量`total` 的值,它的值就是从`1`累加到`100`的结果`5050`。注意,`print(total)`这条语句前是没有缩进的,它不受`for-in`循环的控制,不会重复执行。
76+
上面的代码中,变量`total`的作用是保存累加的结果。在循环的过程中,循环变量`i`的值会从 1 一直取到 100。对于变量`i`的每个取值,我们都执行了`total += i`,它相当于`total = total + i`,这条语句实现了累加操作。所以,当循环结束,我们输出变量`total` 的值,它的值就是从 1 累加到 100 的结果 5050。注意,`print(total)`这条语句前是没有缩进的,它不受`for-in`循环的控制,不会重复执行。
7777

7878
我们再来写一个从1到100偶数求和的代码,如下所示。
7979

@@ -93,7 +93,7 @@ print(total)
9393

9494
> **说明**:上面的`for-in`循环中我们使用了分支结构来判断循环变量`i`是不是偶数。
9595
96-
我们也可以修改`range`函数的参数,将起始值和跨度修改为`2`用更为简单的代码实现从1到100的偶数求和
96+
我们也可以修改`range`函数的参数,将起始值和跨度修改为`2`用更为简单的代码实现从 1 到 100 的偶数求和
9797

9898
```python
9999
"""
@@ -124,7 +124,7 @@ print(sum(range(2, 101, 2)))
124124

125125
如果要构造循环结构但是又不能确定循环重复的次数,我们推荐使用`while`循环。`while`循环通过布尔值或能产生布尔值的表达式来控制循环,当布尔值或表达式的值为`True`时,循环体(`while`语句下方保持相同缩进的代码块)中的语句就会被重复执行,当表达式的值为`False`时,结束循环。
126126

127-
下面我们用`while`循环来实现从1到100的整数求和,代码如下所示。
127+
下面我们用`while`循环来实现从 1 到 100 的整数求和,代码如下所示。
128128

129129
```python
130130
"""
@@ -141,9 +141,9 @@ while i <= 100:
141141
print(total)
142142
```
143143

144-
相较于`for-in`循环,上面的代码我们在循环开始前增加了一个变量`i`,我们使用这个变量来控制循环,所以`while`后面给出了`i <= 100`的条件。在`while`的循环体中,我们除了做累加,还需要让变量`i`的值递增,所以我们添加了`i += 1`这条语句,这样`i`的值就会依次取到`1``2``3`、……,直到`101`。当`i`变成`101`时,`while`循环的条件不再成立,代码会离开`while`循环,此时我们输出变量`total`的值,它就是从`1``100`求和的结果`5050`
144+
相较于`for-in`循环,上面的代码我们在循环开始前增加了一个变量`i`,我们使用这个变量来控制循环,所以`while`后面给出了`i <= 100`的条件。在`while`的循环体中,我们除了做累加,还需要让变量`i`的值递增,所以我们添加了`i += 1`这条语句,这样`i`的值就会依次取到1、2、3、……,直到 101。当`i`变成 101 时,`while`循环的条件不再成立,代码会离开`while`循环,此时我们输出变量`total`的值,它就是从 1 到 100 求和的结果 5050。
145145

146-
如果要实现从1到100的偶数求和,我们可以对上面的代码稍作修改。
146+
如果要实现从 1 到 100 的偶数求和,我们可以对上面的代码稍作修改。
147147

148148
```python
149149
"""
@@ -162,7 +162,7 @@ print(total)
162162

163163
### break和continue
164164

165-
我们再来看一个极端的场景,把`while`循环的条件直接设置为布尔值`True`还是从1到100的偶数求和
165+
我们再来看一个极端的场景,把`while`循环的条件直接设置为布尔值`True`还是从 1 到 100 的偶数求和
166166

167167
```python
168168
"""
@@ -181,7 +181,7 @@ while True:
181181
print(total)
182182
```
183183

184-
上面的代码中使用`while True`构造了一个条件恒成立的循环,也就意味着如果不做特殊处理,循环是不会结束的,这也就是常说的“死循环”。为了在`i`的值超过`100`后让循环停下来,我们使用了`break`关键字,它的作用是终止循环结构的执行。需要注意的是,`break`只能终止它所在的那个循环,这一点在使用嵌套循环结构时需要引起注意,后面我们会讲到什么是嵌套的循环结构。除了`break`之外,还有另一个在循环结构中可以使用的关键字`continue`,它可以用来放弃本次循环后续的代码直接让循环进入下一轮,代码如下所示。
184+
上面的代码中使用`while True`构造了一个条件恒成立的循环,也就意味着如果不做特殊处理,循环是不会结束的,这也就是常说的“死循环”。为了在`i`的值超过 100 后让循环停下来,我们使用了`break`关键字,它的作用是终止循环结构的执行。需要注意的是,`break`只能终止它所在的那个循环,这一点在使用嵌套循环结构时需要引起注意,后面我们会讲到什么是嵌套的循环结构。除了`break`之外,还有另一个在循环结构中可以使用的关键字`continue`,它可以用来放弃本次循环后续的代码直接让循环进入下一轮,代码如下所示。
185185

186186
```python
187187
"""
@@ -235,9 +235,9 @@ for i in range(1, 10):
235235

236236
#### 例子1:判断素数
237237

238-
要求:输入一个大于1的正整数,判断它是不是素数。
238+
要求:输入一个大于 1 的正整数,判断它是不是素数。
239239

240-
> **提示**素数指的是只能被1和自身整除的大于1的整数。例如对于正整数`n`,我们可以通过在`2``n-1`之间寻找有没有`n`的因子,来判断它到底是不是一个素数。当然,循环不用从`2`开始到`n-1`结束,因为对于大于1的正整数,因子应该都是成对出现的,所以循环到 $\small{\sqrt{n}}$ 就可以结束了。
240+
> **提示**素数指的是只能被 1 和自身整除的大于 1 的整数。例如对于正整数 $\small{n}$,我们可以通过在 2 到 $\small{n - 1}$ 之间寻找有没有 $\small{n}$ 的因子,来判断它到底是不是一个素数。当然,循环不用从 2 开始到 $\small{n - 1}$ 结束,因为对于大于 1 的正整数,因子应该都是成对出现的,所以循环到 $\small{\sqrt{n}}$ 就可以结束了。
241241
242242
```python
243243
"""
@@ -259,11 +259,11 @@ else:
259259
print(f'{num}不是素数')
260260
```
261261

262-
> **说明**:上面的代码中我们用了布尔型的变量`is_prime`,我们先将它赋值为`True`,假设`num`是一个素数;接下来,我们在`2``num ** 0.5`的范围寻找`num`的因子,如果找到了`num`的因子,那么它一定不是素数,此时我们将`is_prime`赋值为`False`,同时使用`break`关键字终止循环结构;最后,我们根据`is_prime`的值是`True`还是`False`来给出不同的输出。
262+
> **说明**:上面的代码中我们用了布尔型的变量`is_prime`,我们先将它赋值为`True`,假设`num`是一个素数;接下来,我们在 2 `num ** 0.5`的范围寻找`num`的因子,如果找到了`num`的因子,那么它一定不是素数,此时我们将`is_prime`赋值为`False`,同时使用`break`关键字终止循环结构;最后,我们根据`is_prime`的值是`True`还是`False`来给出不同的输出。
263263
264264
#### 例子2:最大公约数
265265

266-
要求:输入两个大于`0`的正整数,求两个数的最大公约数。
266+
要求:输入两个大于 0 的正整数,求两个数的最大公约数。
267267

268268
> **提示**:两个数的最大公约数是两个数的公共因子中最大的那个数。
269269
@@ -282,9 +282,9 @@ for i in range(x, 0, -1):
282282
break
283283
```
284284

285-
> **说明**:上面代码中`for-in`循环的循环变量值是从大到小的,这样我们找到的能够同时整除`x``y`的因子`i`,就是`x``y`的最大公约数,此时我们用`break`终止循环。如果`x``y`互质,那么循环会执行到`i`变成`1`,因为`1`是所有正整数的因子,此时`x``y`的最大公约数就是`1`
285+
> **说明**:上面代码中`for-in`循环的循环变量值是从大到小的,这样我们找到的能够同时整除`x``y`的因子`i`,就是`x``y`的最大公约数,此时我们用`break`终止循环。如果`x``y`互质,那么循环会执行到`i`变成 1,因为 1 是所有正整数的因子,此时`x``y`的最大公约数就是 1
286286
287-
用上面代码的找最大公约数在执行效率是有问题的。假如`x`的值是`999999999998``y`的值是`999999999999`,很显然两个数是互质的,最大公约数为`1`。但是我们使用上面的代码,循环会重复`999999999998`次,这通常是难以接受的。我们可以使用欧几里得算法(辗转相除法)来找最大公约数,它能帮我们更快的得到想要的结果,代码如下所示。
287+
用上面代码的找最大公约数在执行效率是有问题的。假如`x`的值是`999999999998``y`的值是`999999999999`,很显然两个数是互质的,最大公约数为 1。但是我们使用上面的代码,循环会重复`999999999998`次,这通常是难以接受的。我们可以使用欧几里得算法来找最大公约数,它能帮我们更快的得到想要的结果,代码如下所示。
288288

289289
```python
290290
"""
@@ -304,7 +304,7 @@ print(f'最大公约数: {x}')
304304
305305
#### 例子3:猜数字游戏
306306

307-
要求:计算机出一个`1``100`之间的随机数,玩家输入自己猜的数字,计算机给出对应的提示信息“大一点”、“小一点”或“猜对了”,如果玩家猜中了数字,计算机提示用户一共猜了多少次,游戏结束,否则游戏继续。
307+
要求:计算机出一个 1 到 100 之间的随机数,玩家输入自己猜的数字,计算机给出对应的提示信息“大一点”、“小一点”或“猜对了”,如果玩家猜中了数字,计算机提示用户一共猜了多少次,游戏结束,否则游戏继续。
308308

309309
```python
310310
"""
@@ -330,7 +330,7 @@ while True:
330330
print(f'你一共猜了{counter}次.')
331331
```
332332

333-
> **说明**:上面的代码使用`import random`导入了 Python 标准库的`random`模块,该模块的`randrange`函数帮助我们生成了`1``100`范围的随机数。变量`counter`用来记录循环执行的次数,也就是用户一共做出了几次猜测,每循环一次`counter`的值都会加`1`
333+
> **说明**:上面的代码使用`import random`导入了 Python 标准库的`random`模块,该模块的`randrange`函数帮助我们生成了 1 到 100 范围的随机数。变量`counter`用来记录循环执行的次数,也就是用户一共做出了几次猜测,每循环一次`counter`的值都会加 1
334334
335335
### 总结
336336

0 commit comments

Comments
 (0)