ID:43646
 
What boredom made me do...
I know I made a horrible spelling error at Parabolic, which should be Parabola or something. But whatever. Boredom rules.
mob/proc
Linear(b,a,x){var/Y=b+(a*x);return Y}
Expg(b,g,t){var/H=b*g**t;return H}
Parabolic(a,b,c){var/Y=a*1**2+b*1+c;return Y}
Parabolic2(a,b,c)
src<<"[(a>1?"[b]x²":"x²")+(b>0?"+[b]x":"[b]x")+(c>0?"+[c]":"[c]")]"
src<<"[a*1**2+b*1+c]"
var/top=-b/2*a
var/discriminant=b**2-4*a*c
if(discriminant<=0){src<<"zero point = 0; discriminant 0 or below";return}
var/x1=(-b+sqrt(discriminant))/2*a
var/x2=(-b-sqrt(discriminant))/2*a
src<<"zero points: x = [((x1>0)?"+[x1]":"[x1]")] or x = [((x2>0)?"+[x2]":"[x2]")]"
src<<"top f = [top]"
src<<"top d = [(x1+x2)/2]"
ParabolicX(x1,x2)
if(x1==x2)src<<"[((x1>0)?"(x+[x1])²":"(x[x1])²")]"
else src<<"[((x1>0)?"(x+[x1])":"(x[x1])")+((x2>0)?"(x+[x2])":"(x[x2])")]"
var/b=x1+x2
var/c=x1*x2
src<<"x²[((b>0)?"+[b]x":"[b]x")][((c>0)?"+[c]":"[c]")]"