可以得到圆周率π值小数点后面任意位的值哟!!
有点长,慢慢来,小白看了都会,简单。
1.取绝对值
1.1 代码:
import math x=int(input('请输入数字:')) #如果是负数,就返回正数,即绝对值 print(abs(x)) #abs是返回绝对值,得到10
1.2
你输入的是10,得到就是10
你输入的是-10,得到的就是-10的绝对值,正数10
1.3 注意浮点数取绝对值
代码:
import math x=float(input('请输入数字:')) #如果是小数,就是浮点数,需要float # 浮点数的形式返回绝对值 print(math.fabs(x)) #比如输入-10.5,得到就是10.5
---------------------------------------------
2.取整
代码:
import math x=float(input('请输入数字:')) #如果是小数,就是浮点数,需要float # 返回数字向上取整的结果 #print(math.ceil(x)) #如输入1.3,向上取整就是2 # 返回向下取整的结果 print(math.floor(x)) #比如输入3.3,向下取整就是3
---------------------------------------------
3.取最大值和最小值
代码
import math
x1=int(input('请输入数字:')) x2=int(input('请输入数字:')) x3=int(input('请输入数字:')) x4=int(input('请输入数字:')) x5=int(input('请输入数字:')) print(max(x1, x2, x3, x4, x5)) #取最大值 #print(min(x1, x2, x3, x4, x5)) #取最小值
4.除数,保留小数点
代码:
import math #x1=int(input('请输入数字:')) #这里不能设置取整,否则小数之间的除法就不能使用 x1=float(input('请输入数字:')) x2=float(input('请输入数字:')) x3=x1/x2 print(float(x3))
5.除数,带商和余数的
代码:
import math x1=float(input('请输入数字:')) x2=float(input('请输入数字:')) # 返回模除以后的商和余数 print('(商,余数【带浮点的】)') print(divmod(x1, x2))
6.除法,小数部分和整数部分
代码:
import math x1=float(input('请输入数字:')) x2=float(input('请输入数字:')) x3=x1/x2 # 返回一个浮点数的小数部分和整数部分 print(x3) print('小数部分,整数部分') print("modf", math.modf(x3))
7.除法,取余数
代码:
import math x1=float(input('请输入数字:')) x2=float(input('请输入数字:')) x3=x1%x2 #%在python中是取余,即x3是余数 print(x3)
8.除法或者小数的四舍五入
代码:
import math x1=float(input('请输入数字:')) x2=float(input('请输入数字:')) x3=x1/x2 # 四舍五入,后面指定位数 print(round(x3, 2))#x3是一个小数,2是保留小数后面2位
9.求平方根
代码:
import math x=float(input('请输入数字:')) # 求平方根,比如√4=2,√16=4,注意浮点小数 y=math.sqrt(x) print(y) #带小数点后面,默认15位 # 四舍五入,后面指定位数 print(round(y, 4))#y是一个小数,4是保留小数后面2位 #注意如果y是正数,则只显示小数点后面1位
示意图:
请输入数字:15
3.872983346207417
3.873
------------------
请输入数字:4
2.0
2.0
10.求幂
代码:
import math x=float(input('请输入数字:')) y=float(input('请输入数字:')) # 求x的y次方,同x**y #z=x**y #print(z) print(pow(x, y))
11.三角函数sin、cos等
代码:
import math x=float(input('请输入数字:')) #sin #print(math.sin(x)) #cos print(math.cos(x)) # 反余弦 #print(math.acos(x)) # 反正弦 #print(math.asin(x))
12.欧几里得范数
代码:
import math x=float(input('请输入数字:')) y=float(input('请输入数字:')) # 返回欧几里得范数,也就是sqrt(x*x y*y)。 print(math.hypot(x, y)) #这种写法就对 z=x*x y*y print(z) #print(math.hypot(z))这种写法不对 print(math.sqrt(z))
结果如下:
请输入数字:2
请输入数字:3
3.6055512754639896
13.0
3.605551275463989
13.对数
代码:
import math #x=float(input('请输入数字:')) y=float(input('请输入数字:')) # 返回以2为底的y对数结果 print(math.log2(y)) #注意对数,以2为底的对数是log2,以10为底的对数是log10,暂时没有以x为底的对数logx函数
14.e自然常数
代码:
import math e=math.e #e为自然常数 #x=float(input('请输入数字:')) #y=float(input('请输入数字:')) print(e) #得到2.718281828459045 # 返回以e为底的对数结果 #print(math.log(math.e)) #得到1
15,圆周率π
代码一:
import math p=math.pi #pi为圆周率π print(p) #默认得到3.141592653589793
代码二:#这个求任意小数点后的π的值,且未用到math(因为其中的π值是默认小数点后面位数的)
#导入时间模块 import time #计算当前时间 time1=time.time() #算法根据马青公式计算圆周率 number = int(input('请输入想要计算到小数点后的位数n:')) # 多计算10位,防止尾数取舍的影响 number1 = number 10 # 算到小数点后number1位 b = 10**number1 # 求含4/5的首项 x1 = b*4//5 # 求含1/239的首项 x2 = b// -239 # 求第一大项 he = x1 x2 #设置下面循环的终点,即共计算n项 number *= 2 #循环初值=3,末值2n,步长=2 for i in range(3,number,2): # 求每个含1/5的项及符号 x1 //= -25 # 求每个含1/239的项及符号 x2 //= -57121 # 求两项之和 x = (x1 x2) // i # 求总和 he = x # 求出π pai = he*4 #舍掉后十位 pai //= 10**10 # 输出圆周率π的值 paistring=str(pai) result=paistring[0] str('.') paistring[1:len(paistring)] print (result) time2=time.time() print (u'总共耗时:' str(time2 - time1) 's')
比如想要得到π值的小数点后面100位,直接输入100,得到如下情况:
----------输出情况如下-------------------------------
请输入想要计算到小数点后的位数n:100
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
总共耗时:3.2010533809661865s
-------------喜不喜欢?----------------------------