![Python数据科学零基础一本通](https://wfqqreader-1252317822.image.myqcloud.com/cover/273/31904273/b_31904273.jpg)
第2章 认识变量与基本数学运算
本章摘要
2-1 用Python做计算
2-2 认识变量
2-3 认识程序的意义
2-4 认识注释的意义
2-5 Python变量与其他程序语言的差异
2-6 变量的命名原则
2-7 基本数学运算
2-8 指派运算符
2-9 Python等号的多重指定使用
2-10 删除变量
2-11 Python的断行
2-12 专题——复利计算/计算圆面积与圆周长
本章将从基本数学运算开始,一步一步讲解变量的使用与命名,接着介绍Python的算术运算。
2-1 用Python做计算
假设读者到麦当劳打工,一小时可以获得120元,如果想计算一天工作8小时,可以获得多少工资,可以用计算器执行120×8,然后得到执行结果。在Python Shell中,可以使用下列方式计算。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P24_19332.jpg?sign=1738840424-JXPKVhW76FpDe1UHf0c4j9XEt2olpegm-0-1a9fe2f5db08d674c37fc8ed16573a48)
如果一年实际工作天数是300天,可以用下列方式计算一年所得。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P24_19335.jpg?sign=1738840424-hUQ88A7BDTOtkz4zIrzK2Ff15UPkABxU-0-d17c67a04eaa0090ffa9c153223c4106)
如果读者一个月的花费是9000元,可以用下列方式计算一年可以存储多少钱。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P24_19338.jpg?sign=1738840424-dMF899g5qiZyzSyiICjWPZNmIXjjrh12-0-1de8ddd220f2a4f7bac7279b4790d57c)
上述先计算一年的花费,再用一年的收入减去一年的花费,可以得到所存储的金额。本章将一步一步推导应如何以程序思想,处理一般的运算问题。
2-2 认识变量
2-2-1 基本概念
变量是一个暂时存储数据的地方,对于2-1节的内容而言,如果时薪从120元调整到125元,想要重新计算一年可以存储多少钱,将发现所有的计算需要重新开始。为了解决这个问题,可以考虑将时薪设为一个变量,未来如果调整薪资,直接更改变量内容即可。
在Python中可以用“=”设置变量的内容,在这个实例中,建立了一个变量x,然后用下列方式设置时薪。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P24_19344.jpg?sign=1738840424-o6KS3Y3locprZxmEl4TmQWX6OrIk2Jmz-0-b149523e85bdc0ec48125664cd737198)
如果想要用Python列出时薪,可以使用print( )函数。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P24_19347.jpg?sign=1738840424-i8obzI61sVVHypxDzlAJM9d5fJprx6tk-0-769eff100242c30ea3e1b57dd86891d3)
如果时薪从120元调整到125元,那么可以用下列方式表达。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P25_19807.jpg?sign=1738840424-0lVlTqTIhCYPr7JCJWfvTD21DnNpwOAS-0-82e1b474e163ba9d312985bdb5bac321)
注 在Python Shell环境,也可以直接输入变量名称,即可获得执行结果。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P25_19811.jpg?sign=1738840424-hVuhaQOz690sdZNfcTDTdhaUCM31KoWs-0-ab74f94548e6e9f1a5c7f088a324039b)
一个程序中是可以使用多个变量的,如果想计算一天工作8小时,一年工作300天,可以赚多少钱,假设用变量y表示一年工作所赚的钱,可以用下列方式计算。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P25_19814.jpg?sign=1738840424-CyD1MbBS6WFexifBB2yUVgpsWl6UOKBH-0-d85156cf5e73e78e617ae87f27cfffe0)
如果每个月花费是9000元,使用变量z表示每个月的花费,可以用下列方式计算每年的花费,使用a表示每年的花费。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P25_19817.jpg?sign=1738840424-bvWf5hW77zbwf2xH2Nj39Pwu2tCcnKn7-0-033184c0ec04f5ebe1a0e9b7c5073939)
如果想计算每年可以存储多少钱,使用b表示每年所存储的钱,可以使用下列方式计算。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P25_19820.jpg?sign=1738840424-syQOFOJpyDm4KTwEcuBh2nQwEWCmPmLW-0-4d7f18153275321359294a1485355c9d)
上述语句顺利地使用Python Shell计算了每年可以存储多少钱,可是上述使用Python Shell做运算潜藏的最大问题是,只要过了一段时间,我们可能忘记当初所有设置的变量是代表什么意义。因此在设计程序时,如果可以为变量取个有意义的名称,未来看到程序时,可以比较容易记得。下列是笔者重新设计的变量名称。
时薪:hourly_salary,用此变量代替x,即每小时的薪资。
年薪:annual_salary,用此变量代替y,即一年工作所赚的钱。
月支出:monthly_fee,用此变量代替z,即每个月的花费。
年支出:annual_fee,用此变量代替a,即每年的花费。
年存储:annual_savings,用此变量代替b,即每年所存储的钱。
如果现在使用上述变量重新设计程序,可以得到下列结果。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P26_20251.jpg?sign=1738840424-HvviEmitn4KRnHUtsbIR4TcCr9kzZIeg-0-7ed873dce6ebd9d53f205f1d117f33f1)
相信经过上述说明,读者应该了解变量的基本意义了。
2-2-2 认识变量的地址
Python是一种动态语言,它处理变量的过程与一般静态语言不同。对于静态语言而言,例如C、C++,当声明变量时内存就会预留空间存储此变量的内容,例如,若声明与定义x=10, y=10时,内存内容如下方左图所示。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P26_20256.jpg?sign=1738840424-OW54OmddhSIzrh8LbrbibQ97fYkVzde0-0-3b2d53f7f90b768d3483d8ae943337ba)
对于Python而言,变量所使用的是参照(reference)地址的观念,设置一个变量x等于10时,Python会在内存某个地址存储10,此时我们建立的变量x好像是一个标志(tags),标志内容是存储10的内存地址。如果有另一个变量y也是10,则变量y的标志内容也是存储10的内存地址,如上方右图所示。
使用Python可以使用id( )函数获得变量的地址,可参考下列语法。
实例:列出变量的地址,相同内容的变量会有相同的地址。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P26_20259.jpg?sign=1738840424-KyXHnvZ9iGmte20cvUOMGpNVG1hJxIWe-0-6b0afd25b18faec3d76934318116a492)
2-3 认识程序的意义
延续上一节的实例,如果时薪改变、工作天数改变或每个月的花费改变,所有输入与运算都要重新开始,而且每次都要重新输入程序代码,这是一件很费劲的事,同时很可能会输入错误,为了解决这个问题,可以使用Python Shell打开一个文件,将上述运算存储在文件内,这个文件就是所谓的程序。未来有需要时,再打开重新运算即可。
程序实例ch2_1.py:使用程序计算每年可以存储多少钱,下面是整个程序设计。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P27_20708.jpg?sign=1738840424-PyxssNKJFaVdjsGrInotMLSYK0HMZN9w-0-79d1bd320696c7fc32db39bd5c3a35d6)
执行结果
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P27_20711.jpg?sign=1738840424-E2G33IuwN881CDCVj84xjnvimTtWkyaR-0-30f22264ab4b43e5ca07de8f0b522e0e)
未来时薪改变、工作天数改变或每个月的花费改变时,只要适度修改变量内容,就可以获得正确的执行结果。
2-4 认识注释的意义
程序ch2_1.py中尽管已经为变量设置了有意义的名称,但时间一久,常常还是会忘记各个指令的内涵。所以笔者建议,设计程序时,应适度地为程序代码加上注释。在1-10节已经讲解了注释的方法,下面将直接以实例说明。
程序实例ch2_2.py:重新设计程序ch2_1.py,为程序代码加上注释。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P27_20716.jpg?sign=1738840424-QvEbxhiovTiTz7XI8il1OZrBIVgAGDNa-0-898a4bd6566b2f0b1f2b88150278f059)
执行结果 与ch2_1.py相同。
相信经过上述注释后,即使再过10年,只要一看到程序也可轻松了解整个程序的意义。
2-5 Python变量与其他程序语言的差异
许多程序语言变量在使用前需要先声明,Python对于变量的使用则是可以在需要时,再直接设置使用。有些程序语言在声明变量时,需要设置变量的数据类型,Python则不需要设置,它会针对变量值的内容自行设置数据类型。
2-6 变量的命名原则
Python对于变量的命名,在使用时有一些规则要遵守,否则会造成程序错误。
(1)必须由英文字母、_(下画线)或中文开头,建议使用英文字母。
(2)变量名称只能由英文字母、数字、_(下画线)或中文组成。
(3)英文字母大小写是敏感的,例如,Name与name被视为不同变量名称。
(4)Python系统保留字(或称关键词)不可当作变量名称,会让程序产生错误,Python内建函数名称不建议当作变量名称。
注:虽然变量名称可以用中文,不过笔者不建议使用中文,将来可能会有兼容性的问题。
下列是不可当作变量名称的Python系统保留字。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-T28_192274.jpg?sign=1738840424-4qc9smcUb4c7hwuZ8rBBBWjkPOs6BTKh-0-4d9a2a71b674a999e7aac08b921dc3a7)
下列是不建议当作变量名称的Python系统内建函数,若是不小心将系统内建函数名称当作变量,程序本身不会错误,但是原函数功能会丧失。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-T28_192275.jpg?sign=1738840424-uecQcVVn6r3FXkKbVMSYTw3YmVUveAhc-0-b756e13eecb3815cf75f07512595d430)
实例1:下列是一些不合法的变量名称。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P28_192277.jpg?sign=1738840424-QuLTy4EwFuM5p5Z8CDtlFtOxFV0NTvuz-0-413bea7d57c08038baa87ba3c3026b48)
实例2:下列是一些合法的变量名称。
SUM _fg x5 总和
实例3:下列3个代表不同的变量。
SUM Sum sum
2-7 基本数学运算
2-7-1 四则运算
Python的四则运算是指加( + ) 、减( - ) 、乘( * )和除( / )。
实例1:下列是加法与减法运算实例。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P29_22193.jpg?sign=1738840424-DEPoqKwtsmHjXwtjzvEsc9JlRF5JHaKj-0-19be213d93938ad198607e81c0e3994c)
实例2:乘法与除法运算实例。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P29_22196.jpg?sign=1738840424-IS0CORk3n425viTuhvjfyS39fow5JbEv-0-c4664363162c9328ea4fde2a32a20285)
2-7-2 余数和整除
余数(mod)所使用的符号是“%”,可计算出除法运算中的余数。整除所使用的符号是“//”,是指除法运算中只保留整数部分。
实例:余数和整除运算实例。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P29_22200.jpg?sign=1738840424-L10GOwkhPLykZzfTTvoSqWP71GH5cBOb-0-224a3273edb5eaf383c271c977fb0271)
其实在程序设计中求余数是非常有用的,例如,如果要判断数字是奇数或偶数可以用%,例如"num % 2",如果num是奇数,所得结果是1;如果num是偶数,所得结果是0。当读者学会更多指令后,笔者会做更多的应用说明。
2-7-3 次方
次方的符号是“**”。
实例:平方、次方的运算实例。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P30_3706.jpg?sign=1738840424-dbOtg3fypOahDe6CXh8TvsqWR2LZEopY-0-34d57aefe6690fe82628a75bafbef78d)
2-7-4 Python语言控制运算的优先级
Python语言碰上计算式同时出现在一个指令内时,除了括号“( )”内部运算最优先外,其余计算优先次序如下。
(1)次方;
(2)乘法、除法、求余数(%)、求整数(//),彼此依照出现顺序运算;
(3)加法、减法,彼此依照出现顺序运算。
实例:Python语言控制运算的优先级的应用。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P30_3710.jpg?sign=1738840424-pqc325ZPHi1ZfMpHB9JrkbWeSCC7puwJ-0-df6d3e5446762b7ca6267e499e371141)
2-8 指派运算符
常见的指派运算符如下。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-T30_192291.jpg?sign=1738840424-M640M7SdvuOKPakTVwYMaXfOLdLcgzhg-0-c2eaffd224d69cf5e3027f6e75e0ca83)
实例:指派运算符的实例说明。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P31_4282.jpg?sign=1738840424-XF4gTCkltUqFXccUpCnZYZH0mOaU3S69-0-80c12e4156bf57fbe7156962a0ffc8a9)
2-9 Python等号的多重指定使用
使用Python时,可以一次设置多个变量等于某一数值。
实例1:设置多个变量等于某一数值的应用。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P31_4286.jpg?sign=1738840424-ATjZQrvU8Pmb1w9Prz4FmadsURfRZLUB-0-7f8eb02563a172917132041d48412665)
Python也允许多个变量同时指定不同的数值。
实例2:设置多个变量,每个变量有不同值。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P31_4289.jpg?sign=1738840424-iNapbSMWFuozgNL9C5e2BQo7OI0q5leN-0-b0abdb7adc6218f2697e9ee263d487a1)
当执行上述多重设置变量值后,甚至可以执行更改变量内容。
实例3:将两个变量内容交换。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P31_4292.jpg?sign=1738840424-kESc711jn5OsqFWVsDHiHDq4dKvGnPgG-0-0bbb507a903f1fc961752d660af48b5f)
上述原先x, y分别设为10, 20,但是经过多重设置后变为20, 10。其实可以使用多重指定更灵活地应用Python,在2-7-2节有求商和余数的实例,可以使用divmod( )函数一次获得商和余数,可参考下列实例。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P32_4739.jpg?sign=1738840424-nq8ReQNGaGo5og8hEhyniIMHTsInhxlb-0-471bbb2b47c7cf7ee0ebc50754b1b8dd)
上述使用了divmod(9,5)方法一次获得了元组值(1,4),第8章会介绍元组,然后使用多重指定将此元组(1,4)分别设置给x和y变量。
2-10 删除变量
程序设计时,如果某个变量不再需要,可以使用del指令将此变量删除,相当于可以收回原变量所占的内存空间,以节省内存空间。删除变量的格式如下:
del 变量名称
实例:验证变量名称回收后,将无法再使用。此例中尝试输出已删除的变量,然后程序出现错误消息。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P32_4744.jpg?sign=1738840424-hMK6DwjJ3x2j4i3Y6WUHYpHuHwazOAR7-0-36e8d1c3b1ff5e4823a14c4416092781)
2-11 Python的断行
2-11-1 一行有多个语句
在Python中允许一行有多个,彼此用“;”隔开即可,尽管Python有提供此功能,不过笔者不鼓励如此撰写程序代码。
程序实例ch2_3.py:一行有多个语句的实例。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P33_5228.jpg?sign=1738840424-HXgj6Mp464aqUVc5lNmCj1gz7eCMhZ9j-0-75877a3037afd69de01fd81258d920fe)
执行结果
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P33_5231.jpg?sign=1738840424-1kAuHhDB784muXD3IMRSEm0VtQIgHoB3-0-fcaa94b0eeaebd99bd9e751e861797a8)
2-11-2 将一个语句分成多行
在设计大型程序时,常会碰上一个语句很长,需要分成两行或更多行撰写,此时可以在语句后面加上“\”符号,Python解释器会将下一行的语句视为这一行的语句。特别注意,在“\”符号右边不可以加上任何符号或文字,即使是注释符号也是不允许的。
另外,也可以在语句内使用小括号,如果使用小括号,就可以在语句右边加上注释符号。
程序实例ch2_4.py:将一个语句分成多行的应用。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P33_5235.jpg?sign=1738840424-gLlvJc0grOzEPpy6TV7YGW75HtcWUiSp-0-df90b4af111c901d9f79b63277a60d4e)
执行结果
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P33_5238.jpg?sign=1738840424-8J5FTgrI2wEkgpTiBPpuoQqTlSySXKMR-0-04a3e3f005ff321e78c29e3094d9e02e)
2-12 专题——复利计算/计算圆面积与圆周长
2-12-1 银行存款复利的计算
程序实例ch2_5.py:银行存款复利的计算。假设目前银行年利率是1.5%,复利公式如下:
本金和 = 本金×(1 + 年利率)n # n是年
现有一笔5万元存款,请计算5年后的本金和。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P34_5721.jpg?sign=1738840424-nDyUE6sxOWjkjdMaMDFuuGu3UQKl2ma9-0-b19e9ca87c41de1b60877fd845dcc371)
执行结果
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P34_5724.jpg?sign=1738840424-Uq6hZz4C15bsAegIGCUzcO97tmHMYUls-0-108cf7304329f2e4c8ffaaa836b675bf)
2-12-2 计算圆面积与周长
程序实例ch2_6.py:假设圆半径是5cm,圆面积与圆周长计算公式分别如下:
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P34_192303.jpg?sign=1738840424-LdjG5PKInSQsfctIEwWmZBRmkZivm62K-0-e434d303dc578b4737fd0a0a7346d32a)
执行结果
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P34_5731.jpg?sign=1738840424-RH1qirifyXTcCccxSoJadroUTdr7uHVC-0-a6230d00b0e5ea96f000d045f078121a)
在程序语言的设计中,有一个概念是常量(named constant),这种常量是不可更改内容的。上述计算圆面积或圆周长所使用的PI是圆周率,这是一个固定的值,由于Python语言没有提供此常量(names constant)的语法,上述程序笔者用大写PI当作常量的变量,这是一种习惯,未来读者可以用这种方式处理固定内容的变量。
习题
1. 请重新设计c h2_1.py,将打工时薪改为150元。(2-1~2-3节)
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P34_5736.jpg?sign=1738840424-scajzQCMBvLR7k9kxpBM8evOPpBknUpy-0-3c206463e8f4b3b3e75d63a7fad8a39a)
2. 重新设计ch2_5.py,假设是单利率,5年期间可以领多少利息?(2-5~2-7节)
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P35_22645.jpg?sign=1738840424-uD2ymipUQiSFgspypSKNDOfncqlp5mZ7-0-854a85c1d923287b40ebdd5b63ae2c64)
3. 重新设计ch2_5.py,假设期初本金是100 000元,年利率是2%,这是复利计算,请问10年后本金总和是多少?(2-5~2-12节)
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P35_22648.jpg?sign=1738840424-dpt7FoBakZsBauieElbBVUNjw4HSgXBy-0-a309ba56ec9b9a1d2545b12484c0041a)
4. 一个幼儿园买了100个苹果给学生当营养午餐,学生人数是23人,每个人午餐可以吃一个,请问这些苹果可以吃几天?第几天苹果会不够供应?同时列出缺少了几个。(2-5~2-12节)
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P35_22651.jpg?sign=1738840424-RWMg5AZwn7yCTqNWMU0uEVC8I4VheVnv-0-b30a11a7721ad06e7404165b90fa9b0d)
5. 地球和月球的距离是384 400千米,假设火箭飞行速度是每分钟400千米,请问从地球飞到月球需要多少分钟?(2-5~2-12节)
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P35_22654.jpg?sign=1738840424-MuzfDQHIxAJdLUkFGJSMkNsEswrekM6f-0-ce8cf2991ce0d250871534048517e307)
6. 假设圆柱半径是20厘米,高度是30厘米,请计算此圆柱的体积。圆柱体积计算公式是:圆面积×圆柱高度。(2-5~2-12节)
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P35_22657.jpg?sign=1738840424-HjES1WUkXKCnwyD3D8c68aexdKtYO5dg-0-5c4567928911e6331917e27c66fee6b7)
7. 圆周率PI是一个数学常数,常常使用希腊字母表示,它的物理意义是圆的周长和直径的比率。历史上第一个无穷级数公式称为莱布尼茨公式,它的计算公式如下:(2-5~2-12节)
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P35_192304.jpg?sign=1738840424-JqPzqpXtCNbtFS6t16j3mr02grpBXKxo-0-8a2efb875274726ecb9d92bc8218cbbd)
请分别计算下列级数的执行结果。
(1)
(2)
(3)
注 上述级数如果要收敛到我们熟知的3.14159需要相当长的级数计算。
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P36_23171.jpg?sign=1738840424-4xK2MX7oICIdG13w4bGu5baw6hlbolYV-0-c8fdc005a5e1c556a1b5ebf574ba32e1)
莱布尼茨(Leibniz,1646—1716)是德国人,在世界数学舞台上占有一席之地,他本人另一个职业是律师,许多数学公式都是他在各大城市通勤期间完成的。数学历史上有一个两派说法的无解公案,有人认为他是微积分的发明人,也有人认为发明人是牛顿(Newton)。
8. 尼拉卡莎级数也是应用于计算圆周率PI的级数,此级数收敛的速度比莱布尼茨级数更好,更适合于用来计算PI,它的计算公式如下:
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P36_192311.jpg?sign=1738840424-ZtzyaDrx7n0st5HerX02UwK76qHzl1DL-0-23bc139bdb0a46aec4b435fb4bf11d16)
请分别计算下列级数的执行结果。
(a)
(b)
![](https://epubservercos.yuewen.com/371221/17274856804199906/epubprivate/OEBPS/Images/Figure-P36_23210.jpg?sign=1738840424-aigCwu3c1KAPqeIodATeE3MS4GzbiN3s-0-6bb36914b3ed3d60dadc89196635b866)