Форум сайта python.su
Здравствуйте. Помогите пожалуйста с программой. Суть проблемы такова: написал программу для решения квадратного линейного уравнения, а затем захотел её “облагородить” в графическом виде, но получил кучу ошибок.
#Ввод коэффициентов def inputVar(): a=raw_input('Enter a ') b=raw_input('Enter b ') c=raw_input('Enter c ') return a,b,c #Вывод уравнения в виде ax^2+bx+c=0 def printHeader(a,b,c): import math ax2=str(a)*bool(a)*bool(a-1)+'x^2'*bool(a)+'+'*bool(b+math.fabs(b))*bool(a) bx1=str(b)*bool(b)*bool(b-1)+'x'*bool(b)+'+'*bool(c+math.fabs(c))*bool(bool(a)+bool(b)) cx0=str(c)*bool(c)+'0'*bool(not(bool(bool(a)+bool(b)+bool(c)))) print '\n\n Equation:',ax2+bx1+cx0+' = 0' #Подсчет и вывод корней уравнения def printRoots(a,b,c): D=b**2-4*a*c import math import cmath if a: if D>0: x1=(-b+math.sqrt(D))/(2*a) x2=(-b-math.sqrt(D))/(2*a) print "Roots equation:\n","x1 =",x1,"\nx2 =",x2 if D==0: x1=(-b)/(2*a) x2=x1 print "Root equation:\n","x1 = x2 =",x1 if D<0: print "Roots equation:" print 'x1 = '+str((-b)/(2*a))*bool(b)+'+'*bool(b)+str(cmath.sqrt(D)/(2*math.fabs(a))) print 'x2 = '+str((-b)/(2*a))*bool(b)+'-'*bool(b)+str(cmath.sqrt(D)/(2*math.fabs(a))) elif b: x1=-c/b x2=x1 print'Root equation:\n','x =',x1 elif c: print'Equation is incorrect' else: print'Equation is correct' #Тело программы a,b,c=inputVar() a=int(a); b=int(b); c=int(c) printHeader(a,b,c) printRoots(a,b,c) raw_input("Press enter")
Отредактировано Александр Кошелев (Сен. 10, 2012 02:45:03)
Офлайн
Прилагаю код программы(т.к. некоторые символы были заменены смайлами) в txt. Графическая библиотека Tkinter. Активируется from Tkinter import. Создается гаджет командой root=Tk(). А вот как поместить программу туда??!
Отредактировано Oleg_T (Июнь 4, 2012 12:47:26)
Прикреплённый файлы: КЛУ.txt (1,5 KБ)
Офлайн
[code python][/code]
Офлайн