Wyznaczenie pierwiastków równania kwadratowego

0

Witam. Napisałem sobie taki programik do wyznaczania pierwiastków równania kwadratowego. Ale program nie liczy tych pierwiastków. Niby problem banalny, ale jak się okazuje nie dla mnie. Może ktoś z bardziej doświadczonych kolegów będzie umiał mi doradzić. Oto kod:

import math
print ("To jest algorytm wyliczania pierwiastków równania kwadratowego w postaci ax^2 + bx + c = 0")
def pierwiastek1 (a,b,delta):
  return -b-math.sqrt(delta)/(2*a)
def pierwiastek2 (a,b,delta):
  return -b+math.sqrt(delta)/(2*a)
def pierwiastek0 (a,b):
  return -b/2*a
a = float(input("Podaj wartość parametru a: "))
b = float(input("Podaj wartość parametru b: "))
c = float(input("Podaj wartość parametru c: "))
if a == 0:
  print ("To nie jest równanie kwadratowe")
else:
  delta = b*b-4*a*c
  print ("Delta wynosi ", delta)
if delta > 0:
  print ("Równanie posiada dwa pierwiastki, które wynosza:")
  print ("Pierwiastek x1 =", pierwiastek1)
  print ("Pierwiastek x2 =", pierwiastek2)
elif delta == 0:
  print ("Równanie posiada jeden pierwiastek, który wynosi:")
  print ("Pierwiastek x0 =", pierwiastek0)
else:
  print ("Równanie nie ma żadnych pierwiastków")

A na końcu wyrzuca taki bład i nie chce policzyć mi pierwiastków. Z góry dzięki za pomoc.

screenshot-20200416210152.png

1

Ja tutaj nie widze żadnego błędu, zauważ że nie wywołujesz swoich funkcji pierwiastek0, pierwiastek0, pierwiastek0. Dodaj () i przekaz paremetry do funkcji (w liniach 19, 20 i 23).

0

Ok.Tak zrobiłem, jak napisałeś i teraz wszystko działa.

1 użytkowników online, w tym zalogowanych: 0, gości: 1