Форум сайта python.su
0
Здравствуйте, уважаемые форумчане.
Буду очень благодарна за помощь в вопросе о Питоне Только начинаю изучать этот язык и вот такая беда: нужно делать лабы на Питоне. часть уже сделала, но вот с этим заданием не могу никак справиться.
Нужно решить квадратное уравнение, причем коэффициенты взять из текстового файла (правда, я сделала что каждый коэф.берется из отдельного файла, может препода и так устроит) и ответ тоже записать в текстовый файл.
Может что-то не так с программой, но вот не хочет никак она решаться правильно(((((
Код прикладываю
f1=open(“koefa.txt”,“r”)
for line in f1.readlines():
a=(line)
f2=open(“koefb.txt”,“r”)
for line in f2.readlines():
b=(line)
f3=open(“koefc.txt”,“r”)
for line in f3.readlines():
c=(line)
if a==0:
return “'Uravnenie ne yavljaetsa kvadratnim'”
f4=open(“otvet.txt”,“w”)
f4.write('Uravnenie ne yavljaetsa kvadratnim')
else:
d=b*b-4*a*c # вычисляется дискриминант
if (d<0):
return “'Uravnenie ne imeet korney'”
f4.write('Uravnenie ne imeet korney')
elif d==0:
x=(-b)/(2*a)
return “%6.4f” % (x)
f4.write(“%6.4f” % (x))
else:
x1=(-b+d**0.5)/(2*a)
x2=(-b-d**0.5)/(2*a)
return “%6.4f,%6.4f” % (x1,x2)
f4.write(“%6.4f,%6.4f” % (x1,x2))
f4.close()
f3.close()
f2.close()
f1.close()
Помогиите пожалста…!
Офлайн
0
Коеффициенты задаются в файле var.txt через пробел (например, 1 2 1)
#!/usr/bin/env python
#coding: utf-8
file = open('var.txt','r').read()
var = file.split()
a = float(var[0])
b = float(var[1])
c = float(var[2])
d = b**2-4*a*c
if d<0:
print('equation hasn`t decision')
elif d==0:
print 'x1, x2 = %f' % ((-b)/(2.0*a))
else:
print 'x1 = %f\nx2 = %f' % (((-b-d**0.5)/(2.0*a)),((-b+d**0.5)/(2.0*a)))
Офлайн
0
maggie3
В вашем коде вместо return наверное должен быть print. Return используется для возврата значения из функции.
Офлайн
0
И запись в файл otvet.txt будет происходить только если а равно 0, потому что f4=open(“otvet.txt”,“w”) вызывается внутри if`а.
Офлайн
0
Спасибо огромное всем кто помог! Все работает:)
Офлайн