How to write Quadratic equation with negative coefficient
How to write Quadratic equation with negative coefficient in fp
For a=1, b=-5, c= 6, $ca x^2+cb x + cc=0$ gives 1x^2 + -5x + 6
But i want to have x^2 -5x + 6
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
Quadratic equation : $ca x^2+cb x + cc=0$\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}
fp
add a comment |
How to write Quadratic equation with negative coefficient in fp
For a=1, b=-5, c= 6, $ca x^2+cb x + cc=0$ gives 1x^2 + -5x + 6
But i want to have x^2 -5x + 6
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
Quadratic equation : $ca x^2+cb x + cc=0$\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}
fp
add a comment |
How to write Quadratic equation with negative coefficient in fp
For a=1, b=-5, c= 6, $ca x^2+cb x + cc=0$ gives 1x^2 + -5x + 6
But i want to have x^2 -5x + 6
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
Quadratic equation : $ca x^2+cb x + cc=0$\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}
fp
How to write Quadratic equation with negative coefficient in fp
For a=1, b=-5, c= 6, $ca x^2+cb x + cc=0$ gives 1x^2 + -5x + 6
But i want to have x^2 -5x + 6
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
Quadratic equation : $ca x^2+cb x + cc=0$\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}
fp
fp
edited Mar 21 at 3:52
sandu
asked Mar 20 at 9:54
sandusandu
3,72342856
3,72342856
add a comment |
add a comment |
3 Answers
3
active
oldest
votes
Some comparison are necessary. This assumes the coefficients are integers.
documentclass{beamer}
usepackage{fp}
newcommand{quadratic}[4][x]{%
FPsetca{#2}%
FPsetcb{#3}%
FPsetcc{#4}%
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}%
FPevalxtwo{clip(round(xtwo:4))}%
Quadratic equation: $
ifnumca=1
else
ifnumca=-1
-%
else
ca
fi
fi
#1^2%
ifnumcb=0
else
ifnumcb>0
+%
ifnumcb=1
else
cb
fi
else
ifnumcb=-1
-%
else
cb
fi
fi
#1%
fi
ifnumcc=0
else
ifnumcc>0
+
fi
cc
fi
$\[bigskipamount]
Result: $#1=xone$ and $#1=xtwo$%
}
begin{document}
begin{frame}{Quadratic equation}
quadratic{1}{-5}{6}
bigskip
quadratic[t]{2}{3}{1}
bigskip
quadratic{2}{0}{-8}
end{frame}
end{document}
With expl3:
documentclass{beamer}
usepackage{xparse}
ExplSyntaxOn
NewDocumentCommand{quadratic}{O{x}mmm}
{
Quadratic~equation:~$
str_case:nnF { #2 }
{
{1}{}
{-1}{-}
}
{#2}
#1^{2}
str_case:nnF { #3 }
{
{0}{}
{1}{+#1}
{-1}{-#1}
}
{ fp_compare:nT { #3>0 } { + } #3#1 }
fp_compare:nF { #4 = 0 }
{
fp_compare:nT { #4 > 0 } { + }
}
#4
$\[bigskipamount]
Result:~$#1=sandu_solve:nnnn{+}{#2}{#3}{#4}$~and~
$#1=sandu_solve:nnnn{-}{#2}{#3}{#4}$
}
cs_new:Nn sandu_solve:nnnn
{
fp_eval:n { round( ( -(#3) #1 sqrt((#3)^2-4*(#2)*(#4)) )/(2*(#2)), 4) }
}
ExplSyntaxOff
begin{document}
begin{frame}{Quadratic equation}
quadratic{1}{-5}{6}
bigskip
quadratic[t]{2}{3}{1}
bigskip
quadratic{2}{0}{-8}
end{frame}
end{document}

add a comment |
Will also work with addterm -5x in addition to the intended addtermcb x.
The addterm macro takes a single argument, expands it once, and passes it to addtermaux. The addtermaux definition will grab the first token of the argument and examine to see if it is a minus - character. If so, it typesets a - and the rest of the argument. If not, it sees whether the first token was a + character. If so, it typesets a + and the rest of the argument. If neither of the above cases apply, it typesets a + and the complete argument.
In this way, the right output is provided whether cc is set to 6 or set to +6.
documentclass{beamer}
usepackage{fp}
newcommandaddterm[1]{expandafteraddtermaux#1relax}
defaddtermaux#1#2relax{ifx-#1-#2elseifx+#1+#2else+#1#2fifi}
begin{document}
begin{frame}{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
Quadratic equation : $ca x^2 addtermcb x addtermcc=0$\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

could you explain newcommand and def...
– sandu
Mar 20 at 11:27
@sandu I have edited the answer to provide context.
– Steven B. Segletes
Mar 20 at 11:32
add a comment |
Edit: See below an improved version.
Note the [fragile] in begin{frame}. Necessary with FPifpos.
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}[fragile]{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
FPevalbabs{clip(round(abs(cb):4))}
FPevalcabs{clip(round(abs(cc):4))}
Quadratic equation : $ca x^2$ FPifposcb $+$ else $-$ fi $babs x$ FPifposcc $+$ else $-$ fi $cabs=0$ %\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

Improved version
This version handle better special situations (when some coefficients of the equation became -1, 1 or 0).
As fp's FPqsolve doesn't handle equations without solutions (it emit an error), my code don't display correctly equations where the "x^2" AND the "x" term are null (it display, when the compiler don't stop at errors, something like: Quadratic equation: +6 = 0). This code is intended to be used only when the equation has real(s) solution(s).
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}[fragile]{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
FPevalaabs{clip(round(abs(ca):4))}
FPevalbabs{clip(round(abs(cb):4))}
FPevalcabs{clip(round(abs(cc):4))}
newcommand{signa}{FPifnegca -elsefi}
newcommand{positiveSignBWithA}{FPifzeroca else +fi} % if ca is 0, no positive sign before the "x" term if cb is positive
newcommand{signb}{FPifnegcb -else positiveSignBWithAfi}
newcommand{signc}{FPifnegcc -else +fi}
newcommand{coeffa}{FPifeqaabs1 elseaabsfi}
newcommand{coeffb}{FPifeqbabs1 elsebabsfi}
newcommand{polya}{FPifzeroca elsesignacoeffa x^2fi}
newcommand{polyb}{FPifzerocb elsesignbcoeffb xfi}
newcommand{polyc}{FPifzerocc elsesignccabsfi}
Quadratic equation : $polya polyb polyc =0$ \[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f480444%2fhow-to-write-quadratic-equation-with-negative-coefficient%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
Some comparison are necessary. This assumes the coefficients are integers.
documentclass{beamer}
usepackage{fp}
newcommand{quadratic}[4][x]{%
FPsetca{#2}%
FPsetcb{#3}%
FPsetcc{#4}%
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}%
FPevalxtwo{clip(round(xtwo:4))}%
Quadratic equation: $
ifnumca=1
else
ifnumca=-1
-%
else
ca
fi
fi
#1^2%
ifnumcb=0
else
ifnumcb>0
+%
ifnumcb=1
else
cb
fi
else
ifnumcb=-1
-%
else
cb
fi
fi
#1%
fi
ifnumcc=0
else
ifnumcc>0
+
fi
cc
fi
$\[bigskipamount]
Result: $#1=xone$ and $#1=xtwo$%
}
begin{document}
begin{frame}{Quadratic equation}
quadratic{1}{-5}{6}
bigskip
quadratic[t]{2}{3}{1}
bigskip
quadratic{2}{0}{-8}
end{frame}
end{document}
With expl3:
documentclass{beamer}
usepackage{xparse}
ExplSyntaxOn
NewDocumentCommand{quadratic}{O{x}mmm}
{
Quadratic~equation:~$
str_case:nnF { #2 }
{
{1}{}
{-1}{-}
}
{#2}
#1^{2}
str_case:nnF { #3 }
{
{0}{}
{1}{+#1}
{-1}{-#1}
}
{ fp_compare:nT { #3>0 } { + } #3#1 }
fp_compare:nF { #4 = 0 }
{
fp_compare:nT { #4 > 0 } { + }
}
#4
$\[bigskipamount]
Result:~$#1=sandu_solve:nnnn{+}{#2}{#3}{#4}$~and~
$#1=sandu_solve:nnnn{-}{#2}{#3}{#4}$
}
cs_new:Nn sandu_solve:nnnn
{
fp_eval:n { round( ( -(#3) #1 sqrt((#3)^2-4*(#2)*(#4)) )/(2*(#2)), 4) }
}
ExplSyntaxOff
begin{document}
begin{frame}{Quadratic equation}
quadratic{1}{-5}{6}
bigskip
quadratic[t]{2}{3}{1}
bigskip
quadratic{2}{0}{-8}
end{frame}
end{document}

add a comment |
Some comparison are necessary. This assumes the coefficients are integers.
documentclass{beamer}
usepackage{fp}
newcommand{quadratic}[4][x]{%
FPsetca{#2}%
FPsetcb{#3}%
FPsetcc{#4}%
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}%
FPevalxtwo{clip(round(xtwo:4))}%
Quadratic equation: $
ifnumca=1
else
ifnumca=-1
-%
else
ca
fi
fi
#1^2%
ifnumcb=0
else
ifnumcb>0
+%
ifnumcb=1
else
cb
fi
else
ifnumcb=-1
-%
else
cb
fi
fi
#1%
fi
ifnumcc=0
else
ifnumcc>0
+
fi
cc
fi
$\[bigskipamount]
Result: $#1=xone$ and $#1=xtwo$%
}
begin{document}
begin{frame}{Quadratic equation}
quadratic{1}{-5}{6}
bigskip
quadratic[t]{2}{3}{1}
bigskip
quadratic{2}{0}{-8}
end{frame}
end{document}
With expl3:
documentclass{beamer}
usepackage{xparse}
ExplSyntaxOn
NewDocumentCommand{quadratic}{O{x}mmm}
{
Quadratic~equation:~$
str_case:nnF { #2 }
{
{1}{}
{-1}{-}
}
{#2}
#1^{2}
str_case:nnF { #3 }
{
{0}{}
{1}{+#1}
{-1}{-#1}
}
{ fp_compare:nT { #3>0 } { + } #3#1 }
fp_compare:nF { #4 = 0 }
{
fp_compare:nT { #4 > 0 } { + }
}
#4
$\[bigskipamount]
Result:~$#1=sandu_solve:nnnn{+}{#2}{#3}{#4}$~and~
$#1=sandu_solve:nnnn{-}{#2}{#3}{#4}$
}
cs_new:Nn sandu_solve:nnnn
{
fp_eval:n { round( ( -(#3) #1 sqrt((#3)^2-4*(#2)*(#4)) )/(2*(#2)), 4) }
}
ExplSyntaxOff
begin{document}
begin{frame}{Quadratic equation}
quadratic{1}{-5}{6}
bigskip
quadratic[t]{2}{3}{1}
bigskip
quadratic{2}{0}{-8}
end{frame}
end{document}

add a comment |
Some comparison are necessary. This assumes the coefficients are integers.
documentclass{beamer}
usepackage{fp}
newcommand{quadratic}[4][x]{%
FPsetca{#2}%
FPsetcb{#3}%
FPsetcc{#4}%
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}%
FPevalxtwo{clip(round(xtwo:4))}%
Quadratic equation: $
ifnumca=1
else
ifnumca=-1
-%
else
ca
fi
fi
#1^2%
ifnumcb=0
else
ifnumcb>0
+%
ifnumcb=1
else
cb
fi
else
ifnumcb=-1
-%
else
cb
fi
fi
#1%
fi
ifnumcc=0
else
ifnumcc>0
+
fi
cc
fi
$\[bigskipamount]
Result: $#1=xone$ and $#1=xtwo$%
}
begin{document}
begin{frame}{Quadratic equation}
quadratic{1}{-5}{6}
bigskip
quadratic[t]{2}{3}{1}
bigskip
quadratic{2}{0}{-8}
end{frame}
end{document}
With expl3:
documentclass{beamer}
usepackage{xparse}
ExplSyntaxOn
NewDocumentCommand{quadratic}{O{x}mmm}
{
Quadratic~equation:~$
str_case:nnF { #2 }
{
{1}{}
{-1}{-}
}
{#2}
#1^{2}
str_case:nnF { #3 }
{
{0}{}
{1}{+#1}
{-1}{-#1}
}
{ fp_compare:nT { #3>0 } { + } #3#1 }
fp_compare:nF { #4 = 0 }
{
fp_compare:nT { #4 > 0 } { + }
}
#4
$\[bigskipamount]
Result:~$#1=sandu_solve:nnnn{+}{#2}{#3}{#4}$~and~
$#1=sandu_solve:nnnn{-}{#2}{#3}{#4}$
}
cs_new:Nn sandu_solve:nnnn
{
fp_eval:n { round( ( -(#3) #1 sqrt((#3)^2-4*(#2)*(#4)) )/(2*(#2)), 4) }
}
ExplSyntaxOff
begin{document}
begin{frame}{Quadratic equation}
quadratic{1}{-5}{6}
bigskip
quadratic[t]{2}{3}{1}
bigskip
quadratic{2}{0}{-8}
end{frame}
end{document}

Some comparison are necessary. This assumes the coefficients are integers.
documentclass{beamer}
usepackage{fp}
newcommand{quadratic}[4][x]{%
FPsetca{#2}%
FPsetcb{#3}%
FPsetcc{#4}%
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}%
FPevalxtwo{clip(round(xtwo:4))}%
Quadratic equation: $
ifnumca=1
else
ifnumca=-1
-%
else
ca
fi
fi
#1^2%
ifnumcb=0
else
ifnumcb>0
+%
ifnumcb=1
else
cb
fi
else
ifnumcb=-1
-%
else
cb
fi
fi
#1%
fi
ifnumcc=0
else
ifnumcc>0
+
fi
cc
fi
$\[bigskipamount]
Result: $#1=xone$ and $#1=xtwo$%
}
begin{document}
begin{frame}{Quadratic equation}
quadratic{1}{-5}{6}
bigskip
quadratic[t]{2}{3}{1}
bigskip
quadratic{2}{0}{-8}
end{frame}
end{document}
With expl3:
documentclass{beamer}
usepackage{xparse}
ExplSyntaxOn
NewDocumentCommand{quadratic}{O{x}mmm}
{
Quadratic~equation:~$
str_case:nnF { #2 }
{
{1}{}
{-1}{-}
}
{#2}
#1^{2}
str_case:nnF { #3 }
{
{0}{}
{1}{+#1}
{-1}{-#1}
}
{ fp_compare:nT { #3>0 } { + } #3#1 }
fp_compare:nF { #4 = 0 }
{
fp_compare:nT { #4 > 0 } { + }
}
#4
$\[bigskipamount]
Result:~$#1=sandu_solve:nnnn{+}{#2}{#3}{#4}$~and~
$#1=sandu_solve:nnnn{-}{#2}{#3}{#4}$
}
cs_new:Nn sandu_solve:nnnn
{
fp_eval:n { round( ( -(#3) #1 sqrt((#3)^2-4*(#2)*(#4)) )/(2*(#2)), 4) }
}
ExplSyntaxOff
begin{document}
begin{frame}{Quadratic equation}
quadratic{1}{-5}{6}
bigskip
quadratic[t]{2}{3}{1}
bigskip
quadratic{2}{0}{-8}
end{frame}
end{document}

edited Mar 20 at 11:44
answered Mar 20 at 11:27
egregegreg
730k8819283242
730k8819283242
add a comment |
add a comment |
Will also work with addterm -5x in addition to the intended addtermcb x.
The addterm macro takes a single argument, expands it once, and passes it to addtermaux. The addtermaux definition will grab the first token of the argument and examine to see if it is a minus - character. If so, it typesets a - and the rest of the argument. If not, it sees whether the first token was a + character. If so, it typesets a + and the rest of the argument. If neither of the above cases apply, it typesets a + and the complete argument.
In this way, the right output is provided whether cc is set to 6 or set to +6.
documentclass{beamer}
usepackage{fp}
newcommandaddterm[1]{expandafteraddtermaux#1relax}
defaddtermaux#1#2relax{ifx-#1-#2elseifx+#1+#2else+#1#2fifi}
begin{document}
begin{frame}{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
Quadratic equation : $ca x^2 addtermcb x addtermcc=0$\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

could you explain newcommand and def...
– sandu
Mar 20 at 11:27
@sandu I have edited the answer to provide context.
– Steven B. Segletes
Mar 20 at 11:32
add a comment |
Will also work with addterm -5x in addition to the intended addtermcb x.
The addterm macro takes a single argument, expands it once, and passes it to addtermaux. The addtermaux definition will grab the first token of the argument and examine to see if it is a minus - character. If so, it typesets a - and the rest of the argument. If not, it sees whether the first token was a + character. If so, it typesets a + and the rest of the argument. If neither of the above cases apply, it typesets a + and the complete argument.
In this way, the right output is provided whether cc is set to 6 or set to +6.
documentclass{beamer}
usepackage{fp}
newcommandaddterm[1]{expandafteraddtermaux#1relax}
defaddtermaux#1#2relax{ifx-#1-#2elseifx+#1+#2else+#1#2fifi}
begin{document}
begin{frame}{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
Quadratic equation : $ca x^2 addtermcb x addtermcc=0$\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

could you explain newcommand and def...
– sandu
Mar 20 at 11:27
@sandu I have edited the answer to provide context.
– Steven B. Segletes
Mar 20 at 11:32
add a comment |
Will also work with addterm -5x in addition to the intended addtermcb x.
The addterm macro takes a single argument, expands it once, and passes it to addtermaux. The addtermaux definition will grab the first token of the argument and examine to see if it is a minus - character. If so, it typesets a - and the rest of the argument. If not, it sees whether the first token was a + character. If so, it typesets a + and the rest of the argument. If neither of the above cases apply, it typesets a + and the complete argument.
In this way, the right output is provided whether cc is set to 6 or set to +6.
documentclass{beamer}
usepackage{fp}
newcommandaddterm[1]{expandafteraddtermaux#1relax}
defaddtermaux#1#2relax{ifx-#1-#2elseifx+#1+#2else+#1#2fifi}
begin{document}
begin{frame}{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
Quadratic equation : $ca x^2 addtermcb x addtermcc=0$\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

Will also work with addterm -5x in addition to the intended addtermcb x.
The addterm macro takes a single argument, expands it once, and passes it to addtermaux. The addtermaux definition will grab the first token of the argument and examine to see if it is a minus - character. If so, it typesets a - and the rest of the argument. If not, it sees whether the first token was a + character. If so, it typesets a + and the rest of the argument. If neither of the above cases apply, it typesets a + and the complete argument.
In this way, the right output is provided whether cc is set to 6 or set to +6.
documentclass{beamer}
usepackage{fp}
newcommandaddterm[1]{expandafteraddtermaux#1relax}
defaddtermaux#1#2relax{ifx-#1-#2elseifx+#1+#2else+#1#2fifi}
begin{document}
begin{frame}{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
Quadratic equation : $ca x^2 addtermcb x addtermcc=0$\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

edited Mar 20 at 11:49
answered Mar 20 at 11:20
Steven B. SegletesSteven B. Segletes
160k9204413
160k9204413
could you explain newcommand and def...
– sandu
Mar 20 at 11:27
@sandu I have edited the answer to provide context.
– Steven B. Segletes
Mar 20 at 11:32
add a comment |
could you explain newcommand and def...
– sandu
Mar 20 at 11:27
@sandu I have edited the answer to provide context.
– Steven B. Segletes
Mar 20 at 11:32
could you explain newcommand and def...
– sandu
Mar 20 at 11:27
could you explain newcommand and def...
– sandu
Mar 20 at 11:27
@sandu I have edited the answer to provide context.
– Steven B. Segletes
Mar 20 at 11:32
@sandu I have edited the answer to provide context.
– Steven B. Segletes
Mar 20 at 11:32
add a comment |
Edit: See below an improved version.
Note the [fragile] in begin{frame}. Necessary with FPifpos.
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}[fragile]{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
FPevalbabs{clip(round(abs(cb):4))}
FPevalcabs{clip(round(abs(cc):4))}
Quadratic equation : $ca x^2$ FPifposcb $+$ else $-$ fi $babs x$ FPifposcc $+$ else $-$ fi $cabs=0$ %\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

Improved version
This version handle better special situations (when some coefficients of the equation became -1, 1 or 0).
As fp's FPqsolve doesn't handle equations without solutions (it emit an error), my code don't display correctly equations where the "x^2" AND the "x" term are null (it display, when the compiler don't stop at errors, something like: Quadratic equation: +6 = 0). This code is intended to be used only when the equation has real(s) solution(s).
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}[fragile]{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
FPevalaabs{clip(round(abs(ca):4))}
FPevalbabs{clip(round(abs(cb):4))}
FPevalcabs{clip(round(abs(cc):4))}
newcommand{signa}{FPifnegca -elsefi}
newcommand{positiveSignBWithA}{FPifzeroca else +fi} % if ca is 0, no positive sign before the "x" term if cb is positive
newcommand{signb}{FPifnegcb -else positiveSignBWithAfi}
newcommand{signc}{FPifnegcc -else +fi}
newcommand{coeffa}{FPifeqaabs1 elseaabsfi}
newcommand{coeffb}{FPifeqbabs1 elsebabsfi}
newcommand{polya}{FPifzeroca elsesignacoeffa x^2fi}
newcommand{polyb}{FPifzerocb elsesignbcoeffb xfi}
newcommand{polyc}{FPifzerocc elsesignccabsfi}
Quadratic equation : $polya polyb polyc =0$ \[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

add a comment |
Edit: See below an improved version.
Note the [fragile] in begin{frame}. Necessary with FPifpos.
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}[fragile]{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
FPevalbabs{clip(round(abs(cb):4))}
FPevalcabs{clip(round(abs(cc):4))}
Quadratic equation : $ca x^2$ FPifposcb $+$ else $-$ fi $babs x$ FPifposcc $+$ else $-$ fi $cabs=0$ %\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

Improved version
This version handle better special situations (when some coefficients of the equation became -1, 1 or 0).
As fp's FPqsolve doesn't handle equations without solutions (it emit an error), my code don't display correctly equations where the "x^2" AND the "x" term are null (it display, when the compiler don't stop at errors, something like: Quadratic equation: +6 = 0). This code is intended to be used only when the equation has real(s) solution(s).
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}[fragile]{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
FPevalaabs{clip(round(abs(ca):4))}
FPevalbabs{clip(round(abs(cb):4))}
FPevalcabs{clip(round(abs(cc):4))}
newcommand{signa}{FPifnegca -elsefi}
newcommand{positiveSignBWithA}{FPifzeroca else +fi} % if ca is 0, no positive sign before the "x" term if cb is positive
newcommand{signb}{FPifnegcb -else positiveSignBWithAfi}
newcommand{signc}{FPifnegcc -else +fi}
newcommand{coeffa}{FPifeqaabs1 elseaabsfi}
newcommand{coeffb}{FPifeqbabs1 elsebabsfi}
newcommand{polya}{FPifzeroca elsesignacoeffa x^2fi}
newcommand{polyb}{FPifzerocb elsesignbcoeffb xfi}
newcommand{polyc}{FPifzerocc elsesignccabsfi}
Quadratic equation : $polya polyb polyc =0$ \[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

add a comment |
Edit: See below an improved version.
Note the [fragile] in begin{frame}. Necessary with FPifpos.
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}[fragile]{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
FPevalbabs{clip(round(abs(cb):4))}
FPevalcabs{clip(round(abs(cc):4))}
Quadratic equation : $ca x^2$ FPifposcb $+$ else $-$ fi $babs x$ FPifposcc $+$ else $-$ fi $cabs=0$ %\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

Improved version
This version handle better special situations (when some coefficients of the equation became -1, 1 or 0).
As fp's FPqsolve doesn't handle equations without solutions (it emit an error), my code don't display correctly equations where the "x^2" AND the "x" term are null (it display, when the compiler don't stop at errors, something like: Quadratic equation: +6 = 0). This code is intended to be used only when the equation has real(s) solution(s).
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}[fragile]{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
FPevalaabs{clip(round(abs(ca):4))}
FPevalbabs{clip(round(abs(cb):4))}
FPevalcabs{clip(round(abs(cc):4))}
newcommand{signa}{FPifnegca -elsefi}
newcommand{positiveSignBWithA}{FPifzeroca else +fi} % if ca is 0, no positive sign before the "x" term if cb is positive
newcommand{signb}{FPifnegcb -else positiveSignBWithAfi}
newcommand{signc}{FPifnegcc -else +fi}
newcommand{coeffa}{FPifeqaabs1 elseaabsfi}
newcommand{coeffb}{FPifeqbabs1 elsebabsfi}
newcommand{polya}{FPifzeroca elsesignacoeffa x^2fi}
newcommand{polyb}{FPifzerocb elsesignbcoeffb xfi}
newcommand{polyc}{FPifzerocc elsesignccabsfi}
Quadratic equation : $polya polyb polyc =0$ \[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

Edit: See below an improved version.
Note the [fragile] in begin{frame}. Necessary with FPifpos.
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}[fragile]{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
FPevalbabs{clip(round(abs(cb):4))}
FPevalcabs{clip(round(abs(cc):4))}
Quadratic equation : $ca x^2$ FPifposcb $+$ else $-$ fi $babs x$ FPifposcc $+$ else $-$ fi $cabs=0$ %\[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

Improved version
This version handle better special situations (when some coefficients of the equation became -1, 1 or 0).
As fp's FPqsolve doesn't handle equations without solutions (it emit an error), my code don't display correctly equations where the "x^2" AND the "x" term are null (it display, when the compiler don't stop at errors, something like: Quadratic equation: +6 = 0). This code is intended to be used only when the equation has real(s) solution(s).
documentclass{beamer}
usepackage{fp}
begin{document}
begin{frame}[fragile]{Quadratic equation}
FPsetca{1}
FPsetcb{-5}
FPsetcc{6}
FPqsolvexonextwocacbcc
FPevalxone{clip(round(xone:4))}
FPevalxtwo{clip(round(xtwo:4))}
FPevalaabs{clip(round(abs(ca):4))}
FPevalbabs{clip(round(abs(cb):4))}
FPevalcabs{clip(round(abs(cc):4))}
newcommand{signa}{FPifnegca -elsefi}
newcommand{positiveSignBWithA}{FPifzeroca else +fi} % if ca is 0, no positive sign before the "x" term if cb is positive
newcommand{signb}{FPifnegcb -else positiveSignBWithAfi}
newcommand{signc}{FPifnegcc -else +fi}
newcommand{coeffa}{FPifeqaabs1 elseaabsfi}
newcommand{coeffb}{FPifeqbabs1 elsebabsfi}
newcommand{polya}{FPifzeroca elsesignacoeffa x^2fi}
newcommand{polyb}{FPifzerocb elsesignbcoeffb xfi}
newcommand{polyc}{FPifzerocc elsesignccabsfi}
Quadratic equation : $polya polyb polyc =0$ \[1cm]
Result: $x = xone quad text{and} quad x = xtwo$
end{frame}
end{document}

edited Mar 21 at 3:26
answered Mar 20 at 11:05
quark67quark67
64026
64026
add a comment |
add a comment |
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f480444%2fhow-to-write-quadratic-equation-with-negative-coefficient%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown