Documentation for 8476290081

This commit is contained in:
github-actions
2020-06-24 22:53:44 +00:00
parent 49f2865ffd
commit 87398be5d8
547 changed files with 9502 additions and 7787 deletions

View File

@@ -116,7 +116,7 @@ Public Member Functions</h2></td></tr>
<tr class="separator:a10119a83839e65962621b73df46a5337"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4598f1f2794b5e17e10c25e0501e41a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#af4598f1f2794b5e17e10c25e0501e41a">large_number</a> (int n)</td></tr>
<tr class="separator:af4598f1f2794b5e17e10c25e0501e41a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b1efd203274e38a67b78937dfb9b872"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a0b1efd203274e38a67b78937dfb9b872">large_number</a> (const <a class="el" href="../../db/d82/classlarge__number.html">large_number</a> &amp;<a class="el" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>)</td></tr>
<tr class="memitem:a0b1efd203274e38a67b78937dfb9b872"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a0b1efd203274e38a67b78937dfb9b872">large_number</a> (const <a class="el" href="../../db/d82/classlarge__number.html">large_number</a> &amp;a)</td></tr>
<tr class="separator:a0b1efd203274e38a67b78937dfb9b872"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76ddf1ed1b00fb8c107ea56f7f91e42f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a76ddf1ed1b00fb8c107ea56f7f91e42f">large_number</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; unsigned char &gt; &amp;vec)</td></tr>
<tr class="separator:a76ddf1ed1b00fb8c107ea56f7f91e42f"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -167,14 +167,14 @@ Private Attributes</h2></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a778428c4761b6ea5e7770743f0eab5ab"><td class="memItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::ostream</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a778428c4761b6ea5e7770743f0eab5ab">operator&lt;&lt;</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::ostream</a> &amp;out, const <a class="el" href="../../db/d82/classlarge__number.html">large_number</a> &amp;<a class="el" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>)</td></tr>
<tr class="memitem:a778428c4761b6ea5e7770743f0eab5ab"><td class="memItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::ostream</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a778428c4761b6ea5e7770743f0eab5ab">operator&lt;&lt;</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::ostream</a> &amp;out, const <a class="el" href="../../db/d82/classlarge__number.html">large_number</a> &amp;a)</td></tr>
<tr class="separator:a778428c4761b6ea5e7770743f0eab5ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ba872b9a3ce1f3da6c06c5409663cca"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a7ba872b9a3ce1f3da6c06c5409663cca">operator==</a> (<a class="el" href="../../db/d82/classlarge__number.html">large_number</a> const &amp;<a class="el" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>, <a class="el" href="../../db/d82/classlarge__number.html">large_number</a> const &amp;b)</td></tr>
<tr class="memitem:a7ba872b9a3ce1f3da6c06c5409663cca"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a7ba872b9a3ce1f3da6c06c5409663cca">operator==</a> (<a class="el" href="../../db/d82/classlarge__number.html">large_number</a> const &amp;a, <a class="el" href="../../db/d82/classlarge__number.html">large_number</a> const &amp;b)</td></tr>
<tr class="separator:a7ba872b9a3ce1f3da6c06c5409663cca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72ae1ef050c4c28c50952ecab22d4b94"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a72ae1ef050c4c28c50952ecab22d4b94">operator!=</a> (<a class="el" href="../../db/d82/classlarge__number.html">large_number</a> const &amp;<a class="el" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>, <a class="el" href="../../db/d82/classlarge__number.html">large_number</a> const &amp;b)</td></tr>
<tr class="memitem:a72ae1ef050c4c28c50952ecab22d4b94"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a72ae1ef050c4c28c50952ecab22d4b94">operator!=</a> (<a class="el" href="../../db/d82/classlarge__number.html">large_number</a> const &amp;a, <a class="el" href="../../db/d82/classlarge__number.html">large_number</a> const &amp;b)</td></tr>
<tr class="separator:a72ae1ef050c4c28c50952ecab22d4b94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70d23d67535e67030db570e56c00e16d"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a70d23d67535e67030db570e56c00e16d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="../../db/d82/classlarge__number.html">large_number</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a70d23d67535e67030db570e56c00e16d">operator+</a> (const <a class="el" href="../../db/d82/classlarge__number.html">large_number</a> &amp;<a class="el" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>, const T &amp;b)</td></tr>
<tr class="memitem:a70d23d67535e67030db570e56c00e16d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="../../db/d82/classlarge__number.html">large_number</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../db/d82/classlarge__number.html#a70d23d67535e67030db570e56c00e16d">operator+</a> (const <a class="el" href="../../db/d82/classlarge__number.html">large_number</a> &amp;a, const T &amp;b)</td></tr>
<tr class="separator:a70d23d67535e67030db570e56c00e16d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
@@ -617,7 +617,13 @@ Here is the call graph for this function:</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; }</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; }</div>
</div><!-- fragment -->
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d82/classlarge__number_ac27b399ed872731758ec33ebb102730e_cgraph.svg" width="603" height="139"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
<a id="aeb22d2aae39d1b1e0bd39c7f47b333eb"></a>
@@ -705,46 +711,46 @@ Here is the call graph for this function:</div>
<div class="fragment"><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; {</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;------ Checking `large_number` class implementations\t&quot;</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="../../db/d82/classlarge__number.html">large_number</a> <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>(40);</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="../../db/d82/classlarge__number.html">large_number</a> a(40);</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">// 1. test multiplication</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> *= 10;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(400)) {</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 1/6 (&quot;</span> &lt;&lt; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> &lt;&lt; <span class="stringliteral">&quot;!=400)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; a *= 10;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span> (a != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(400)) {</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 1/6 (&quot;</span> &lt;&lt; a &lt;&lt; <span class="stringliteral">&quot;!=400)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\tPassed 1/6...&quot;</span>;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">// 2. test compound addition with integer</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> += 120;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(520)) {</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 2/6 (&quot;</span> &lt;&lt; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> &lt;&lt; <span class="stringliteral">&quot;!=520)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; a += 120;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">if</span> (a != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(520)) {</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 2/6 (&quot;</span> &lt;&lt; a &lt;&lt; <span class="stringliteral">&quot;!=520)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\tPassed 2/6...&quot;</span>;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">// 3. test compound multiplication again</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> *= 10;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(5200)) {</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 3/6 (&quot;</span> &lt;&lt; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> &lt;&lt; <span class="stringliteral">&quot;!=5200)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; a *= 10;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">if</span> (a != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(5200)) {</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 3/6 (&quot;</span> &lt;&lt; a &lt;&lt; <span class="stringliteral">&quot;!=5200)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\tPassed 3/6...&quot;</span>;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="comment">// 4. test increment (prefix)</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; ++<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(5201)) {</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 4/6 (&quot;</span> &lt;&lt; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> &lt;&lt; <span class="stringliteral">&quot;!=5201)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; ++a;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">if</span> (a != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(5201)) {</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 4/6 (&quot;</span> &lt;&lt; a &lt;&lt; <span class="stringliteral">&quot;!=5201)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\tPassed 4/6...&quot;</span>;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="comment">// 5. test increment (postfix)</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>++;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(5202)) {</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 5/6 (&quot;</span> &lt;&lt; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> &lt;&lt; <span class="stringliteral">&quot;!=5202)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; a++;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">if</span> (a != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(5202)) {</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 5/6 (&quot;</span> &lt;&lt; a &lt;&lt; <span class="stringliteral">&quot;!=5202)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\tPassed 5/6...&quot;</span>;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="comment">// 6. test addition with another large number</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> = <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> + <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(<span class="stringliteral">&quot;7000000000000000000000000000000&quot;</span>);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(<span class="stringliteral">&quot;7000000000000000000000000005202&quot;</span>)) {</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 6/6 (&quot;</span> &lt;&lt; <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; a = a + <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(<span class="stringliteral">&quot;7000000000000000000000000000000&quot;</span>);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (a != <a class="code" href="../../db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337">large_number</a>(<span class="stringliteral">&quot;7000000000000000000000000005202&quot;</span>)) {</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;\tFailed 6/6 (&quot;</span> &lt;&lt; a</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; &lt;&lt; <span class="stringliteral">&quot;!=7000000000000000000000000005202)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div>
@@ -796,7 +802,7 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>operator overload to compare two numbers </p>
<div class="fragment"><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; {</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">return</span> !(<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a> == b);</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">return</span> !(a == b);</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div>
</div><!-- fragment -->
</div>
@@ -838,7 +844,7 @@ template&lt;class T &gt; </div>
</div><div class="memdoc">
<p>operator overload to perform addition </p>
<div class="fragment"><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; {</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keyword">static</span> <a class="code" href="../../db/d82/classlarge__number.html">large_number</a> c = <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>;</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keyword">static</span> <a class="code" href="../../db/d82/classlarge__number.html">large_number</a> c = a;</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; c += b;</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">return</span> c;</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; }</div>
@@ -880,8 +886,8 @@ template&lt;class T &gt; </div>
</div><div class="memdoc">
<p>operator overload to compare two numbers </p>
<div class="fragment"><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; {</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>.num_digits(); i &gt; 0; i--)</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; out &lt;&lt; static_cast&lt;int&gt;(<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>[i - 1]);</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = a.num_digits(); i &gt; 0; i--)</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; out &lt;&lt; static_cast&lt;int&gt;(a[i - 1]);</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">return</span> out;</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</div>
</div><!-- fragment -->
@@ -922,11 +928,11 @@ template&lt;class T &gt; </div>
</div><div class="memdoc">
<p>operator overload to compare two numbers </p>
<div class="fragment"><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; {</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordtype">size_t</span> N = <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>.num_digits();</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordtype">size_t</span> N = a.num_digits();</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">if</span> (N != b.num_digits())</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; N; i++)</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a>[i] != b[i])</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">if</span> (a[i] != b[i])</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }</div>
@@ -972,7 +978,6 @@ template&lt;class T &gt; </div>
<div class="ttc" id="aclasslarge__number_html_a2f5571e66305cf68bb8283e4aeda58bc"><div class="ttname"><a href="../../db/d82/classlarge__number.html#a2f5571e66305cf68bb8283e4aeda58bc">large_number::multiply</a></div><div class="ttdeci">void multiply(const T n)</div><div class="ttdef"><b>Definition:</b> large_number.h:258</div></div>
<div class="ttc" id="aclasslarge__number_html_af2b3ec9c35842d3a46ac7326f268af57"><div class="ttname"><a href="../../db/d82/classlarge__number.html#af2b3ec9c35842d3a46ac7326f268af57">large_number::_digits</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; _digits</div><div class="ttdef"><b>Definition:</b> large_number.h:285</div></div>
<div class="ttc" id="ais_integral_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/is_integral.html">std::is_integral</a></div></div>
<div class="ttc" id="amatrix__exponentiation_8cpp_html_a9ecd98ce0064e2f7f97bb6a92f58ee72"><div class="ttname"><a href="../../d7/d35/matrix__exponentiation_8cpp.html#a9ecd98ce0064e2f7f97bb6a92f58ee72">a</a></div><div class="ttdeci">vector&lt; ll &gt; a</div><div class="ttdef"><b>Definition:</b> matrix_exponentiation.cpp:53</div></div>
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
<div class="ttc" id="amax_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/algorithm/max.html">std::max</a></div><div class="ttdeci">T max(T... args)</div></div>
<div class="ttc" id="aexit_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/utility/program/exit.html">std::exit</a></div><div class="ttdeci">T exit(T... args)</div></div>
@@ -980,7 +985,7 @@ template&lt;class T &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../db/d82/classlarge__number.html">large_number</a></li>
<li class="footer">Generated on Wed Jun 24 2020 22:45:09 for Algorithms_in_C++ by
<li class="footer">Generated on Wed Jun 24 2020 22:52:57 for Algorithms_in_C++ by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>