设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 1392|回复: 2
打印 上一主题 下一主题

【交作业】求解一元二次方程

[复制链接]

1

主题

0

好友

7

积分

新手上路

Rank: 1

跳转到指定楼层
楼主
发表于 2022-7-5 11:00:44 |只看该作者 |倒序浏览


是免费教程当中的小作业,求解一元二次方程,尝试用面向对象的方法去写
但是对于无理数的答案,结果会报错,只能解最简单的
还没有把课程学完,等学完了去研究一下无理数怎么搞
  1. import math


  2. class equation:
  3.     def __init__(self,a,b,c):
  4.         self.a = a
  5.         self.b = b
  6.         self.c = c

  7.     def solve(self):
  8.         delta =math.sqrt(math.pow(self.b,2) - 4 * self.a * self.c)
  9.         x1 = ((0 - self.b) - delta)/2/self.a
  10.         x2 = ((0 - self.b) + delta)/2/self.a
  11.         print("这个方程式的答案是:x1=%f ,x2=%f,"%(x1,x2))


  12. a = int(input('输入a:\n'))
  13. b = int(input('输入b:\n'))
  14. c = int(input('输入c:\n'))

  15. fumulation = equation(a,b,c)#这里踩雷,一开始就要把变量给出去
  16. fumulation.solve()
复制代码
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

沙发
发表于 2022-7-7 22:59:03 |只看该作者
手动点赞!
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

44

积分

新手上路

Rank: 1

板凳
发表于 2022-7-29 23:33:50 |只看该作者
有点意思,不过记得考虑delta的情况
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-4-25 16:09 , Processed in 0.016621 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部