Python编程实现数学运算求一元二次方程的实根算法示例

yipeiwu_com5年前Python基础

本文实例讲述了Python编程实现数学运算求一元二次方程的实根算法。分享给大家供大家参考,具体如下:

问题:

请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:ax² + bx + c = 0的两个解。

实现代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import math
def quadratic(a,b,c):
  if a == 0:
    raise TypeError('a不能为0')
  if not isinstance(a,(int,float)) or not isinstance(b,(int,float)) or not isinstance(c,(int,float)):
    raise TypeError('Bad operand type')
  delta = math.pow(b,2) - 4*a*c
  if delta < 0:
    return '无实根'
  x1= (math.sqrt(delta)-b)/(2*a)
  x2=-(math.sqrt(delta)+b)/(2*a)
  return x1,x2
print(quadratic(2,3,1))
print(quadratic(1,3,-4))

运行效果图如下:

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python Series从0开始索引的方法

如下所示: b.reset_index(drop=True) reset_index代表重新设置索引,drop=True为删除原索引。 以上这篇Python Series从0开始索...

python3.6、opencv安装环境搭建过程(图文教程)

python3.6、opencv安装环境搭建过程(图文教程)

我需要使用tesseract-OCR的模块,vs的配置有点麻烦,所以采用py的环境,搭建。 1.在python.org网站下载python3.6版本 我下载的3.6.8的python的...

Python迭代器与生成器用法实例分析

本文实例讲述了Python迭代器与生成器用法。分享给大家供大家参考,具体如下: 迭代器,迭代的工具 什么是迭代器? 指的是一个重复的过程,每一次重复称为一次迭代,并且每一次重复的结果是...

python sqlobject(mysql)中文乱码解决方法

UnicodeEncodeError: 'latin-1' codec can't encode characters in position; 找了一天终于搞明白了,默认情况下,mys...

Python实现的简单模板引擎功能示例

本文实例讲述了Python实现的简单模板引擎功能。分享给大家供大家参考,具体如下: #coding:utf- 8 __author__="sdm" __author_email='s...