from math import sqrt def getValues(): while True: values = input( 'Gi inn en andregradsliknings a, b og c separert med mellomrom:\n\t') try: splitValues = values.split(' ') assert len(splitValues) == 3 return ( int(splitValues[0]), int(splitValues[1]), int(splitValues[2]) ) except ValueError: print('Sørg for at alle tallene er heltall.\n') except AssertionError: print('Det skal bare være 3 tall.\n') a, b, c = getValues() d = b**2 - 4 * a * c expression = f'{a}x^2 + {b}x + {c}' if d > 0: roots = [(-b + sqrt(d)) / (2 * a), (-b - sqrt(d)) / (2 * a)] print( f'Andregradsligningen {expression} har de to reelle løsningene {roots[0]} og {roots[1]}' ) elif d == 0: root = (-b + sqrt(d)) / (2 * a) print(f'Andregradsligningen {expression} har en reell dobbelrot {root}') else: print(f'Andregradsligningen {expression} har to imaginære løsninger')