知识点:
  • import sys, sys模块包含了与Python解释器和它的环境有关的函数。 “sys”是“system”的缩写。sys.exit() 中途退出程序, (注:0是正常退出,其他为不正常,可抛异常事件供捕获!)
  • from math import *,这样声明,可以直接使用math()函数;如果声明为import math,则需math.sqrt()
  • input()输入是字符串类型,split()以空格分割字符串
  • 判断是否为数字类型,否则抛出异常,中止程序执行
  • 函数返回多个值,其实是一种假象,返回的是一个tuple,在语法上,返回一个tuple可以省略括号,而多个变量可以同时接收一个tuple,按位置赋给对应的值,所以,Python的函数返回多值其实就是返回一个tuple。
  • 函数体内部可以用return随时返回函数结果;函数执行完毕也没有return语句时,自动return None
# -*- coding: utf-8 -*-
#定义一个函数求一元二次方程的两个解
from math import *
import sys
#参数a,b,c需均为整数或浮点数,(b**2)-(4*a*c)应大于0
def quadratic(a,b,c):
x1=(-b+sqrt((b**2)-(4*a*c)))/(2*a)
x2=(-b-sqrt((b**2)-(4*a*c)))/(2*a)
return x1,x2
#检查参数a,b,c数据类型,否则抛出异常,中止程序
a,b,c=input('请输入一元二次方程组的a,b,c三个参数,以空格分割:').split()
try:
a = float(a)
except ValueError:
print("input is not a float!")
sys.exit() #退出程序
try:
b = float(b)
except ValueError:
print("input is not a float!")
sys.exit()
try:
c = float(c)
except ValueError:
print("input is not a float!")
sys.exit()
#print('a:%.2f,b:%.2f,c:%.2f'%(a,b,c))
#方程求解
if (b**2)-(4*a*c)>0:
x1,x2=quadratic(a,b,c)
print('一元二次方程的两个解为:','x1:%.2f,x2:%.2f'%(x1,x2))
else:
print('该方程无实数解')

【Python实践-1】求一元二次方程的两个解的更多相关文章

  1. 【Python笔记】2020年7月22日练习=[定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程的两个解]

    学习教程:廖雪峰-Python教程-函数-函数定义 学习记录:[定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程的两个解] 学习心得: 1.对问题进行判断分析后再下手. ...

  2. Python编写“求一元二次方程的解”

    #求一元二次方程的解 import math def equation(a,b,c): h=b*b-4*a*c #一元二次方程的解,百度来的 if h>=0: x1=(-b+math.sqrt( ...

  3. OpenJudge计算概论-求一元二次方程的根【含复数根的计算、浮点数与0的大小比较】

    /*====================================================================== 求一元二次方程的根 总时间限制: 1000ms 内存限 ...

  4. Openjudge-计算概论(A)-求一元二次方程的根

    描述: 利用公式x1 = (-b + sqrt(b*b-4*a*c))/(2*a), x2 = (-b - sqrt(b*b-4*a*c))/(2*a)求一元二次方程ax2 + bx + c =0的根 ...

  5. ocrosoft 1015 习题1.22 求一元二次方程a*x^2 + b*x + c = 0的根

    http://acm.ocrosoft.com/problem.php?id=1015 题目描述 求一元二次方程a*x2 + b*x + c = 0的根.系数a.b.c为浮点数,其值在运行时由键盘输入 ...

  6. 计算概论(A)/基础编程练习1(8题)/4:求一元二次方程的根

    #include<stdio.h> #include<math.h> int main() { // 待解方程数目 int n; scanf("%d", & ...

  7. C++分支结构,求一元二次方程的根

    总时间限制:  1000ms 内存限制:  65536kB 描述 利用公式x1 = (-b + sqrt(b*b-4*a*c))/(2*a), x2 = (-b - sqrt(b*b-4*a*c))/ ...

  8. 用c#求一元二次方程

    题目:编一个程序,输入a .b.c 的值,求出一元二次方程a*x*x+b*x+c=0的二个实数根. 我的思路: 我们都知道数学中求一元二次方程有很多方法:直接开方法.配方法.公式法.分解因式法等等,在 ...

  9. 基于linux或windows的c/s的循环服务器求一元二次方程的根

    在linux和windows上实现 c/s模式 socket循环服务器求解一元二次方程的根 ax^2+bx+c=0 根据上式,客户端发送a,b,c给服务器,返回求解的根 暂未考虑非法数据等问题 lin ...

随机推荐

  1. Tar专题

    下面的脚本根据当前的系统时间生成压缩文件名,并备份文件到指定目录: DIR=/www/webbackup/web/ FILE_NAME=`date +%y%m%d%H` FILE_NAME=$DIR/ ...

  2. SpringBoot操作数据库 2017.12.14

    http://blog.csdn.net/forezp/article/details/61472783

  3. css的div垂直居中的方法,百分比div垂直居中

    前言 我们都知道,固定高宽的div在网页中垂直居中很简单,相信大家也很容易的写出来,但是不是固定高宽的div如何垂直居中呢?我们在网页布局,特别是手机等web端网页经常是不固定高宽的div,那么这些d ...

  4. Android SlidingMenu 使用详解

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/36677279 很多APP都有侧滑菜单的功能,部分APP左右都是侧滑菜单~Slid ...

  5. 跟我学ASP.NET MVC之二:第一个ASP.NET MVC程序

    摘要: 本篇文章带你一步一步创建一个简单的ASP.NET MVC程序.  创建新ASP.NET MVC工程 点击“OK”按钮后,打开下面的窗口: 这里选择“Empty”模板以及“MVC”选项.这次不创 ...

  6. Python3 模拟登录知乎(requests)

    # -*- coding: utf-8 -*- """ 知乎登录分为两种登录 一是手机登录 API : https://www.zhihu.com/login/phone ...

  7. 如何通过织云 Lite 愉快地玩转 TSW

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 织云 Lite & TSW 织云 Lite 是一款轻量型服务管理平台,提供标准化的应用打包操作,可连接持续集成系统,完成线上程序分发 ...

  8. php一些需要注意的点

    1,类的自动加载: spl_autoload_register(function ($class_name) { require_once $class_name . '.php';}); autol ...

  9. multiWriter.go

    package blog4go import ( "errors" "fmt" ) var ( // ErrFilePathNotFound 文件路径找不到 E ...

  10. .NET Core 迁移躺坑记

    最近将自己负责的一个核心接口系统从.Net Framework迁移到了.Net Core. 整体过程,从业务层面说一般般吧(整体还好但还是搞的业务有感,没出严重故障)但是技术层面上感觉其实并没有达到要 ...