Python中的n次方用pow()方法来表示。
我们提供的服务有:做网站、网站制作、微信公众号开发、网站优化、网站认证、游仙ssl等。为上千多家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的游仙网站制作公司
语法:math.pow( x, y )。
内置的 pow() 方法pow(x, y[, z])。
函数是计算x的y次方,如果z在存在,则再对结果进行取模,其结果等效于pow(x,y) %z。
注意:pow() 通过内置的方法直接调用,内置方法会把参数作为整型,而 math 模块则会把参数转换为 float。
语言特点
1、优点:
简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。
易学:Python极其容易上手,因为Python有极其简单的说明文档 。
易读、易维护:风格清晰划一、强制缩进、用途广泛
速度快:Python 的底层是用 C 语言写的,很多标准库和第三方库也都是用 C 写的,运行速度非常快。
免费、开源:Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。
高层语言:用Python语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
可移植性:由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。
2、缺点:
单行语句和命令行输出问题:很多时候不能将程序连写成一行,如import sys;for i in sys.path:print i。而perl和awk就无此限制,可以较为方便的在shell下完成简单程序,不需要如Python一样,必须将程序写入一个py文件。
给初学者带来困惑:独特的语法,这也许不应该被称为局限,但是它用缩进来区分语句关系的方式还是给很多初学者带来了困惑。即便是很有经验的Python程序员,也可能陷入陷阱当中。
运行速度慢:这里是指与C和C++相比。Python开发人员尽量避开不成熟或者不重要的优化。一些针对非重要部位的加快运行速度的补丁通常不会被合并到Python内。
所以很多人认为Python很慢。不过,根据二八定律,大多数程序对速度要求不高。在某些对运行速度要求很高的情况,Python设计师倾向于使用JIT技术,或者用使用C/C++语言改写这部分程序。可用的JIT技术是PyPy。
以上内容参考 百度百科-python
import numpy as np
def solve_quad(a,b,c):
if a == 0:
print('您输入的不是二次方程!')
else:
delta = b*b-4*a*c
x = -b/(2*a)
if delta == 0:
print('方程有惟一解,X=%f'%(x))
return x
elif delta 0:
x1 = x-np.sqrt(delta)/(2*a)
x2 = x+np.sqrt(delta)/(2*a)
print('方程有两个实根:X1=%f,X2=%f'%(x1,x2))
return x1,x2
else:
x1 = (-b+complex(0,1)*np.sqrt((-1)*delta))/(2*a)
x2 = (-b-complex(0,1)*np.sqrt((-1)*delta))/(2*a)
print(x1,x2)
return x1,x2
Python
是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。
######python求标准的一元二次方程的解###############
a,b,c= map(float,input("请输入aX^2+bX+c=0,函数中的三个参数:(空格隔开)").split())
###使用公式b^2-4ac判定是否有解b^2-4ac####
i=b*b-4*a*c
if i0:
print("该方程无实数解!")
elif i==0:
print("该方程解为:%.2f"%((-1)*b/(2*a)))#有一个解
else:
print("该方程解为:%.2f或%.2f"%((((-1)*b+i**0.5)/(2*a)),(((-1)*b-i**0.5)/(2*a))))
该方法运用是运用公式求解,保留两位小数,只能求实数解,供参考,有问题可追问
这里使用一个技巧。平常的思维是:从 2~200,每遇到一个数,依次看有没有哪个数可以将其整除,但是这样做效率很低,所以这里使用另一个方法:首先用循环,将 2~200 以内的所有非素数计算出来,因为非素数必然可以表示为两个整数的乘积,所以直接循环进行乘积即可,代码如下:
a = [0 for i in range(200)] # 初始化一个 200 以内的数组,存放是否是素数的标记
for i in range(2,100):
for j in range(2,100):
if i*j 200:
a[i*j] = 1 # 是素数,标记为 1,否则标记为 0
lineno = 0
for i in range(2,200):
if a[i] 1: # 如果标记为0,则输出
print(i, end=" ") # end=" " 表示不换行
lineno = lineno + 1
if lineno % 10 == 0:
print() # 换行
运用input(), float(), print()以及math模块的sqrt()就可以了,具体如下:
源代码
如有帮助,请采纳!!!
# 导入模块
import math
# 读取输入,整数或小数
a = float(input("请输入a值:"))
b = float(input("请输入b值:"))
c = float(input("请输入c值:"))
# 判断是否有实数解
if (b ** 2 - 4 * a * c) 0: # 无实数解
print("该二次函数无实数解!!!")
else: # 有实数解
x1 = round((- b + math.sqrt(b ** 2 - 4 * a * c)) / (2 * a), 2)
x2 = round((- b - math.sqrt(b ** 2 - 4 * a * c)) / (2 * a), 2)
print("二次函数的解为:")
print("x1 =", x1)
print("x2 =", x2)