设为首页收藏本站

Crossin的编程教室

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

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

[复制链接]

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()
复制代码
回复

使用道具 举报

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

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

GMT+8, 2024-5-17 23:57 , Processed in 0.024685 second(s), 22 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部