diff --git a/1-ProceduralProgramming/6b-hands-on.ipynb b/1-ProceduralProgramming/6b-hands-on.ipynb index a5cd32a7ac4ed4a784225822db1fe09f6375e1e0..061a21ca60cdb65ffe2d7df37e3544d4bc6dc68e 100644 --- a/1-ProceduralProgramming/6b-hands-on.ipynb +++ b/1-ProceduralProgramming/6b-hands-on.ipynb @@ -14,7 +14,7 @@ }, "source": [ "<h1>Table of contents<span class=\"tocSkip\"></span></h1>\n", - "<div class=\"toc\"><ul class=\"toc-item\"><li><span><a href=\"#EXERCICE-8:-Multiplication-by-an-integer\" data-toc-modified-id=\"EXERCICE-8:-Multiplication-by-an-integer-1\"><strong>EXERCICE 8: Multiplication by an integer</strong></a></span></li><li><span><a href=\"#EXERCICE-9:-display-sum-of-two-Multiply\" data-toc-modified-id=\"EXERCICE-9:-display-sum-of-two-Multiply-2\">EXERCICE 9: display sum of two <code>Multiply</code></a></span></li><li><span><a href=\"#EXERCICE-10:-print-error-in-display_sum()\" data-toc-modified-id=\"EXERCICE-10:-print-error-in-display_sum()-3\"><strong>EXERCICE 10: print error in <code>display_sum()</code></strong></a></span></li><li><span><a href=\"#[optional]-EXERCICE-11:-function-pointers\" data-toc-modified-id=\"[optional]-EXERCICE-11:-function-pointers-4\">[optional] EXERCICE 11: function pointers</a></span></li><li><span><a href=\"#[optional]-EXERCICE-12:-write-in-output-file\" data-toc-modified-id=\"[optional]-EXERCICE-12:-write-in-output-file-5\">[optional] EXERCICE 12: write in output file</a></span></li></ul></div>" + "<div class=\"toc\"><ul class=\"toc-item\"><li><span><a href=\"#EXERCICE-8:-Multiplication-by-an-integer\" data-toc-modified-id=\"EXERCICE-8:-Multiplication-by-an-integer-1\"><strong>EXERCICE 8: Multiplication by an integer</strong></a></span></li><li><span><a href=\"#EXERCICE-9:-display-sum-of-two-Multiply\" data-toc-modified-id=\"EXERCICE-9:-display-sum-of-two-Multiply-2\">EXERCICE 9: display sum of two <code>Multiply</code></a></span></li><li><span><a href=\"#EXERCICE-10:-print-error-in-DisplaySumOfMultiply()\" data-toc-modified-id=\"EXERCICE-10:-print-error-in-DisplaySumOfMultiply()-3\"><strong>EXERCICE 10: print error in <code>DisplaySumOfMultiply()</code></strong></a></span></li><li><span><a href=\"#[optional]-EXERCICE-11:-function-pointers\" data-toc-modified-id=\"[optional]-EXERCICE-11:-function-pointers-4\">[optional] EXERCICE 11: function pointers</a></span></li><li><span><a href=\"#[optional]-EXERCICE-12:-write-in-output-file\" data-toc-modified-id=\"[optional]-EXERCICE-12:-write-in-output-file-5\">[optional] EXERCICE 12: write in output file</a></span></li></ul></div>" ] }, { @@ -100,7 +100,7 @@ "source": [ "### EXERCICE 9: display sum of two `Multiply`\n", "\n", - "Write a `display_sum` function which will write the computation of the sum of two real numbers through their approximation.\n", + "Write a `DisplaySumOfMultiply` function which will write the computation of the sum of two real numbers through their approximation.\n", "\n", "This function will take 5 arguments:\n", "\n", @@ -133,7 +133,7 @@ " std::cout << std::endl;\n", " \n", " for (int nbits = 1; nbits <= 8; ++nbits)\n", - " DisplayMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832\n", + " DisplaySumOfMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832\n", " \n", " return EXIT_SUCCESS;\n", "}" @@ -169,7 +169,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### __EXERCICE 10: print error in `display_sum()`__\n", + "### __EXERCICE 10: print error in `DisplaySumOfMultiply()`__\n", "\n", "Modify slightly the function defined above to add display of the error; we will express it over 1000 (see exercice 7 which was roughly the same!)\n", "\n", @@ -231,7 +231,7 @@ "\n", "void Display065_3515_035_4832(int nbits)\n", "{ \n", - " display_sum(nbits, 0.65, 3515, 0.35, 4832); \n", + " DisplaySumOfMultiply(nbits, 0.65, 3515, 0.35, 4832); \n", "}\n", "\n", "int main()\n", diff --git a/HandsOn/1-ProceduralProgramming/Solution/exercice10.cpp b/HandsOn/1-ProceduralProgramming/Solution/exercice10.cpp index 108b8e47b065b01d470ada4d0fe418b601a137f5..c5d8e18e1bb48f2bb6b783999ef7506177c583bf 100644 --- a/HandsOn/1-ProceduralProgramming/Solution/exercice10.cpp +++ b/HandsOn/1-ProceduralProgramming/Solution/exercice10.cpp @@ -94,7 +94,7 @@ int Multiply(int Nbits, double value, int coefficient) //! Compute value1 * coefficient1 + value2 * coefficient2 over Nbits bits. -void DisplayMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) +void DisplaySumOfMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -129,7 +129,7 @@ int main(int argc, char** argv) std::cout << std::endl; for (int nbits = 1; nbits <= 8; ++nbits) - DisplayMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 + DisplaySumOfMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 return EXIT_SUCCESS; diff --git a/HandsOn/1-ProceduralProgramming/Solution/exercice11.cpp b/HandsOn/1-ProceduralProgramming/Solution/exercice11.cpp index b82209e707a18b6d8855ce7bcce309e45c57b166..5a38922c4a0ed2d66ced9ee698477303fd96e692 100644 --- a/HandsOn/1-ProceduralProgramming/Solution/exercice11.cpp +++ b/HandsOn/1-ProceduralProgramming/Solution/exercice11.cpp @@ -94,7 +94,7 @@ int Multiply(int Nbits, double value, int coefficient) //! Compute value1 * coefficient1 + value2 * coefficient2 over Nbits bits. -void DisplayMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) +void DisplaySumOfMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -121,7 +121,7 @@ void Display035(int Nbits) void Display06535150354832(int Nbits) { - DisplayMultiply(Nbits, 0.65, 3515, 0.35, 4832); + DisplaySumOfMultiply(Nbits, 0.65, 3515, 0.35, 4832); } void Loop(int initial, int final, int increment, void(*display_function)(int)) diff --git a/HandsOn/1-ProceduralProgramming/Solution/exercice12.cpp b/HandsOn/1-ProceduralProgramming/Solution/exercice12.cpp index b80134c2f39ea9d69f78addc8d612a09f3b4759b..ec05e019d5c4d3e97669c45ef6d3ca78b4685857 100644 --- a/HandsOn/1-ProceduralProgramming/Solution/exercice12.cpp +++ b/HandsOn/1-ProceduralProgramming/Solution/exercice12.cpp @@ -95,7 +95,7 @@ int Multiply(int Nbits, double value, int coefficient) //! Compute value1 * coefficient1 + value2 * coefficient2 over Nbits bits. -void DisplayMultiply(std::ostream& out, int Nbits, double value1, int coefficient1, double value2, int coefficient2) +void DisplaySumOfMultiply(std::ostream& out, int Nbits, double value1, int coefficient1, double value2, int coefficient2) { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -122,7 +122,7 @@ void Display035(std::ostream& out, int Nbits) void Display06535150354832(std::ostream& out, int Nbits) { - DisplayMultiply(out, Nbits, 0.65, 3515, 0.35, 4832); + DisplaySumOfMultiply(out, Nbits, 0.65, 3515, 0.35, 4832); } void Loop(std::ostream& out, int initial, int final, int increment, void(*display_function)(std::ostream&, int)) diff --git a/HandsOn/1-ProceduralProgramming/Solution/exercice9.cpp b/HandsOn/1-ProceduralProgramming/Solution/exercice9.cpp index 24fa26d00b7230b671480019385037b9bd36c7da..4d52c8094b98076e10e2d049c3c8e688cb91aacd 100644 --- a/HandsOn/1-ProceduralProgramming/Solution/exercice9.cpp +++ b/HandsOn/1-ProceduralProgramming/Solution/exercice9.cpp @@ -94,7 +94,7 @@ int Multiply(int Nbits, double value, int coefficient) //! Compute value1 * coefficient1 + value2 * coefficient2 over Nbits bits. -void DisplayMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) +void DisplaySumOfMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -125,7 +125,7 @@ int main(int argc, char** argv) std::cout << std::endl; for (int nbits = 1; nbits <= 8; ++nbits) - DisplayMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 + DisplaySumOfMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 return EXIT_SUCCESS; diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice13.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice13.cpp index 49ebb2330bfec6b0bb5351241871e2ddd78c0890..6453fd5ba5e7b2c45cd647932889be2993214cd3 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice13.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice13.cpp @@ -105,7 +105,7 @@ int Multiply(int Nbits, double value, int coefficient) //! Compute value1 * coefficient1 + value2 * coefficient2 over Nbits bits. -void DisplayMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) +void DisplaySumOfMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -140,7 +140,7 @@ int main(int argc, char** argv) std::cout << std::endl; for (int nbits = 1; nbits <= 8; ++nbits) - DisplayMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 + DisplaySumOfMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 return EXIT_SUCCESS; diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice14.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice14.cpp index b1d75df4d32a9cdf901c9abb7eeaba94564cc7c1..83aa614e03df196d05e996f75b8582e81cb1b522 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice14.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice14.cpp @@ -110,7 +110,7 @@ int Multiply(int Nbits, double value, int coefficient) //! Compute value1 * coefficient1 + value2 * coefficient2 over Nbits bits. -void DisplayMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) +void DisplaySumOfMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -145,7 +145,7 @@ int main(int argc, char** argv) std::cout << std::endl; for (int nbits = 1; nbits <= 8; ++nbits) - DisplayMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 + DisplaySumOfMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 return EXIT_SUCCESS; diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice15.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice15.cpp index 7eb0cc234f3ac8592d9ff51be19dd2c8b38f93d0..97149ce77519df4ed6c12bd1ebb5ed01f215ad38 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice15.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice15.cpp @@ -116,7 +116,7 @@ int Multiply(int Nbits, double value, int coefficient) //! Compute value1 * coefficient1 + value2 * coefficient2 over Nbits bits. -void DisplayMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) +void DisplaySumOfMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -151,7 +151,7 @@ int main(int argc, char** argv) std::cout << std::endl; for (int nbits = 1; nbits <= 8; ++nbits) - DisplayMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 + DisplaySumOfMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 return EXIT_SUCCESS; diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice16.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice16.cpp index 50db4e06481fea532d1a1389ccdaebb600464988..14adc5edfba5f46fb2b6c8d0bad1b49a0baa053e 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice16.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice16.cpp @@ -138,7 +138,7 @@ int Multiply(int Nbits, double value, int coefficient) //! Compute value1 * coefficient1 + value2 * coefficient2 over Nbits bits. -void DisplayMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) +void DisplaySumOfMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -173,7 +173,7 @@ int main(int argc, char** argv) std::cout << std::endl; for (int nbits = 1; nbits <= 8; ++nbits) - DisplayMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 + DisplaySumOfMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 return EXIT_SUCCESS; diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice17.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice17.cpp index 33f442aff9e523e57eb35284ca84af8f32cf3589..4abea9bfdf558684cface585c2cabdbfc8433d6e 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice17.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice17.cpp @@ -142,7 +142,7 @@ void DisplayPowerOf2Approx(int Nbits, double value) //! Compute value1 * coefficient1 + value2 * coefficient2 over Nbits bits. -void DisplayMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) +void DisplaySumOfMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -181,7 +181,7 @@ int main(int argc, char** argv) std::cout << std::endl; for (int nbits = 1; nbits <= 8; ++nbits) - DisplayMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 + DisplaySumOfMultiply(nbits, 0.65, 3515, 0.35, 4832); // to compute 0.65 * 3515 + 0.35 * 4832 return EXIT_SUCCESS; diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice18.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice18.cpp index 0f4bf09b7d0857b212b3dbe3afb28857d39fbf31..f526b7b793a309905d8fb0ffd8855e1d224a958c 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice18.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice18.cpp @@ -163,7 +163,7 @@ void TestDisplayPowerOfTwoApprox::Display(int Nbits, double value) const //! Compute value1 * coefficient1 + value2 * coefficient2 over Nbits bits. -void DisplayMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) +void DisplaySumOfMultiply(int Nbits, double value1, int coefficient1, double value2, int coefficient2) { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -199,7 +199,7 @@ int main(int argc, char** argv) std::cout << std::endl; for (int nbits = 1; nbits <= 8; ++nbits) - DisplayMultiply(nbits, 0.65, 3515, 0.35, 4832); + DisplaySumOfMultiply(nbits, 0.65, 3515, 0.35, 4832); return EXIT_SUCCESS; } diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice19.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice19.cpp index e30bf17e8d2df1242b556cd05d6c0bb6d46ecb25..5245d225e65daf441834294f38cce1be5d19a522 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice19.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice19.cpp @@ -162,7 +162,7 @@ void TestDisplayPowerOfTwoApprox::Display(int Nbits, double value) const } -class TestDisplayMultiply +class TestDisplaySumOfMultiply { public: @@ -177,13 +177,13 @@ private: }; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; int rounded = RoundAsInt(exact); @@ -218,7 +218,7 @@ int main(int argc, char** argv) std::cout << std::endl; - TestDisplayMultiply test_display_multiply; + TestDisplaySumOfMultiply test_display_multiply; for (int nbits = 1; nbits <= 8; ++nbits) test_display_multiply.Do(nbits); diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice20.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice20.cpp index 6bda15baaea5c8658c59c81c3c4bf952b5bf99b1..9cbb0f9742a9614d8aea67d8e4779bd5832d4cda 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice20.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice20.cpp @@ -187,7 +187,7 @@ void TestDisplayPowerOfTwoApprox::Display(int Nbits, double value) const } -class TestDisplayMultiply +class TestDisplaySumOfMultiply { public: @@ -202,13 +202,13 @@ private: }; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -240,7 +240,7 @@ int main(int argc, char** argv) std::cout << std::endl; - TestDisplayMultiply test_display_multiply; + TestDisplaySumOfMultiply test_display_multiply; for (int nbits = 1; nbits <= 8; ++nbits) test_display_multiply.Do(nbits); diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice21.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice21.cpp index 4ceb57d4e11542ec90c21d6b590df86203ee8c58..b0eaa89f2f8dbdf32a74f5ba24ede1fc379d3b07 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice21.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice21.cpp @@ -233,15 +233,15 @@ void TestDisplayPowerOfTwoApprox::Display(int Nbits, double value) const } -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -255,20 +255,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -300,7 +300,7 @@ int main(int argc, char** argv) std::cout << std::endl; - TestDisplayMultiply test_display_multiply(1000); + TestDisplaySumOfMultiply test_display_multiply(1000); for (int nbits = 1; nbits <= 8; ++nbits) test_display_multiply.Do(nbits); diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice22.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice22.cpp index b065c9d188a863121605ddfb6fd4781a54610166..a4b8031a2b0cc77726e18733286ffb0fc9fe8986 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice22.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice22.cpp @@ -283,15 +283,15 @@ void TestDisplayPowerOfTwoApprox035::Do(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -305,20 +305,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -357,7 +357,7 @@ int main(int argc, char** argv) std::cout << std::endl; - TestDisplayMultiply test_display_multiply(1000); + TestDisplaySumOfMultiply test_display_multiply(1000); for (int nbits = 1; nbits <= 8; ++nbits) test_display_multiply.Do(nbits); diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice23.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice23.cpp index 2afa4e44d92ac822bed459ed32dd3f73d8b9a919..ffc13b6e3b066faa3e6fae2791eb1b038ea11b04 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice23.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice23.cpp @@ -295,15 +295,15 @@ void TestDisplayPowerOfTwoApprox035::Do(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -317,20 +317,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -411,7 +411,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply(10000)); + container.Register(new TestDisplaySumOfMultiply(10000)); container.Do(4, 16, 4); diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice24.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice24.cpp index 635383240ef2cbd26bbb8fb9b967dd66ea1171c3..ae525dd2e7406f2f7e9abb4451988a7131fcf593 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice24.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice24.cpp @@ -295,15 +295,15 @@ void TestDisplayPowerOfTwoApprox035::Do(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -317,20 +317,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -439,7 +439,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply(10000)); + container.Register(new TestDisplaySumOfMultiply(10000)); container.Do(4, 16, 4); diff --git a/HandsOn/2-ObjectProgramming/Solution/exercice25.cpp b/HandsOn/2-ObjectProgramming/Solution/exercice25.cpp index 6e37babf183b9d758808b529e5aa0f2cc3ba064e..e6a750c928efb61b642e78f6286de3ca3509dc53 100644 --- a/HandsOn/2-ObjectProgramming/Solution/exercice25.cpp +++ b/HandsOn/2-ObjectProgramming/Solution/exercice25.cpp @@ -295,15 +295,15 @@ void TestDisplayPowerOfTwoApprox035::Do(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -317,20 +317,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -475,7 +475,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply(10000)); + container.Register(new TestDisplaySumOfMultiply(10000)); Loop(4, 16, 4, container); diff --git a/HandsOn/3-Operators/Solution/exercice26.cpp b/HandsOn/3-Operators/Solution/exercice26.cpp index 59b804f50876d23d59699f80c919937d2be4ebb6..bb36327172545788000bf8aaf6a3818e2d2a5db3 100644 --- a/HandsOn/3-Operators/Solution/exercice26.cpp +++ b/HandsOn/3-Operators/Solution/exercice26.cpp @@ -295,15 +295,15 @@ void TestDisplayPowerOfTwoApprox035::Do(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -317,20 +317,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -475,7 +475,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply(10000)); + container.Register(new TestDisplaySumOfMultiply(10000)); Loop(4, 16, 4, container); diff --git a/HandsOn/3-Operators/Solution/exercice27.cpp b/HandsOn/3-Operators/Solution/exercice27.cpp index a6bed9aaa4ac82960bae9e1deb9d15b07535103e..c845e8cd6a32d60280249f8dedebf916e0a87b6d 100644 --- a/HandsOn/3-Operators/Solution/exercice27.cpp +++ b/HandsOn/3-Operators/Solution/exercice27.cpp @@ -300,15 +300,15 @@ void TestDisplayPowerOfTwoApprox035::Do(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -322,20 +322,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -481,7 +481,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply(10000)); + container.Register(new TestDisplaySumOfMultiply(10000)); Loop(4, 16, 4, container); diff --git a/HandsOn/3-Operators/Solution/exercice28.cpp b/HandsOn/3-Operators/Solution/exercice28.cpp index 66180944176866c0f8ed9d14e226ce3dbfcad149..204738e088081ef3b8a1c793861858802b62ff56 100644 --- a/HandsOn/3-Operators/Solution/exercice28.cpp +++ b/HandsOn/3-Operators/Solution/exercice28.cpp @@ -300,15 +300,15 @@ void TestDisplayPowerOfTwoApprox035::Do(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -322,20 +322,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -481,7 +481,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply(10000)); + container.Register(new TestDisplaySumOfMultiply(10000)); Loop(4, 16, 4, container); diff --git a/HandsOn/3-Operators/Solution/exercice29.cpp b/HandsOn/3-Operators/Solution/exercice29.cpp index 107bf1a96fe1ee1e52beb9b055bca5a22de60ab5..deb443ed8eb8a0ca9ba595e636c813e202c08ee6 100644 --- a/HandsOn/3-Operators/Solution/exercice29.cpp +++ b/HandsOn/3-Operators/Solution/exercice29.cpp @@ -307,15 +307,15 @@ void TestDisplayPowerOfTwoApprox035::Do(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -329,20 +329,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::Do(int Nbits) const +void TestDisplaySumOfMultiply::Do(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -488,7 +488,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply(10000)); + container.Register(new TestDisplaySumOfMultiply(10000)); Loop(4, 16, 4, container); diff --git a/HandsOn/3-Operators/Solution/exercice30.cpp b/HandsOn/3-Operators/Solution/exercice30.cpp index 8b96d061335861d7e0a8f692f64681b5b0d9719a..9d932a86667f5ac8d5c8176d6da8b49311531c9c 100644 --- a/HandsOn/3-Operators/Solution/exercice30.cpp +++ b/HandsOn/3-Operators/Solution/exercice30.cpp @@ -307,15 +307,15 @@ void TestDisplayPowerOfTwoApprox035::operator()(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -329,20 +329,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::operator()(int Nbits) const +void TestDisplaySumOfMultiply::operator()(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -488,7 +488,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply(10000)); + container.Register(new TestDisplaySumOfMultiply(10000)); Loop(4, 16, 4, container); diff --git a/HandsOn/3-Operators/Solution/exercice31.cpp b/HandsOn/3-Operators/Solution/exercice31.cpp index 8b96d061335861d7e0a8f692f64681b5b0d9719a..9d932a86667f5ac8d5c8176d6da8b49311531c9c 100644 --- a/HandsOn/3-Operators/Solution/exercice31.cpp +++ b/HandsOn/3-Operators/Solution/exercice31.cpp @@ -307,15 +307,15 @@ void TestDisplayPowerOfTwoApprox035::operator()(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -329,20 +329,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::operator()(int Nbits) const +void TestDisplaySumOfMultiply::operator()(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -488,7 +488,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply(10000)); + container.Register(new TestDisplaySumOfMultiply(10000)); Loop(4, 16, 4, container); diff --git a/HandsOn/4-Templates/Solution/exercice31.cpp b/HandsOn/4-Templates/Solution/exercice31.cpp index 9e72bb9ccde8a2bd18faedfcbbed407efd0b6515..deb5d7fd918e9a1fbf6470574045da4686bbac83 100644 --- a/HandsOn/4-Templates/Solution/exercice31.cpp +++ b/HandsOn/4-Templates/Solution/exercice31.cpp @@ -316,15 +316,15 @@ void TestDisplayPowerOfTwoApprox035::operator()(int Nbits) const -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - TestDisplayMultiply(int resolution); + TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -338,20 +338,20 @@ private: }; -TestDisplayMultiply::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } -TestDisplayMultiply::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply::~TestDisplaySumOfMultiply() = default; -void TestDisplayMultiply::operator()(int Nbits) const +void TestDisplaySumOfMultiply::operator()(int Nbits) const { Display(Nbits, 0.65, 3515, 0.35, 4832); } -void TestDisplayMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const +void TestDisplaySumOfMultiply::Display(int Nbits, double value1, int coefficient1, double value2, int coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -497,7 +497,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply(10000)); + container.Register(new TestDisplaySumOfMultiply(10000)); Loop(4, 32, 4, container); diff --git a/HandsOn/4-Templates/Solution/exercice32.cpp b/HandsOn/4-Templates/Solution/exercice32.cpp index 3e369380227023c9033d92b1b20fe6f53b4298b9..8f085f2260a87c7ff6c83f66c3e615214db2e86f 100644 --- a/HandsOn/4-Templates/Solution/exercice32.cpp +++ b/HandsOn/4-Templates/Solution/exercice32.cpp @@ -327,15 +327,15 @@ void TestDisplayPowerOfTwoApprox035::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -350,24 +350,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, 0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -514,7 +514,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065(1000000)); container.Register(new TestDisplayPowerOfTwoApprox035(1000000)); - container.Register(new TestDisplayMultiply<integer_type>(10000)); + container.Register(new TestDisplaySumOfMultiply<integer_type>(10000)); Loop(4, 32, 4, container); diff --git a/HandsOn/4-Templates/Solution/exercice33.cpp b/HandsOn/4-Templates/Solution/exercice33.cpp index a38ac9fe7e42ee430780dd0810e5a1bb470a5a32..d6b51822110118822f4497b03ddae1073d945695 100644 --- a/HandsOn/4-Templates/Solution/exercice33.cpp +++ b/HandsOn/4-Templates/Solution/exercice33.cpp @@ -340,15 +340,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -363,24 +363,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, 0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -527,7 +527,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065<integer_type>(100000000)); container.Register(new TestDisplayPowerOfTwoApprox035<integer_type>(100000000)); - container.Register(new TestDisplayMultiply<integer_type>(1000000)); + container.Register(new TestDisplaySumOfMultiply<integer_type>(1000000)); Loop(4, 32, 4, container); diff --git a/HandsOn/4-Templates/Solution/exercice34.cpp b/HandsOn/4-Templates/Solution/exercice34.cpp index 3b53174fde7d3b7f0a46deab77f48b4ba0f0a264..2dfd92aa58e985055c7f254fa3cf714e5c0d3a4d 100644 --- a/HandsOn/4-Templates/Solution/exercice34.cpp +++ b/HandsOn/4-Templates/Solution/exercice34.cpp @@ -340,15 +340,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -363,24 +363,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, 0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -531,7 +531,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065<integer_type>(100000000)); container.Register(new TestDisplayPowerOfTwoApprox035<integer_type>(100000000)); - container.Register(new TestDisplayMultiply<integer_type>(1000000)); + container.Register(new TestDisplaySumOfMultiply<integer_type>(1000000)); Loop(4, 32, 4, container); diff --git a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice35.cpp b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice35.cpp index 7f2696f253c7405e1d268429b65c7c133fd67dc8..2798a387eeae7e3595f40636bcd3f33354b76b5e 100644 --- a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice35.cpp +++ b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice35.cpp @@ -340,15 +340,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -363,24 +363,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, 0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { double exact = value1 * coefficient1 + value2 * coefficient2; @@ -555,7 +555,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065<integer_type>(100000000)); container.Register(new TestDisplayPowerOfTwoApprox035<integer_type>(100000000)); - container.Register(new TestDisplayMultiply<integer_type>(1000000)); + container.Register(new TestDisplaySumOfMultiply<integer_type>(1000000)); Loop(4, 32, 4, container); } diff --git a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice36.cpp b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice36.cpp index 630bd0e515c83989de9366cf6a5a513f1cd2084b..f46e0a43a80cc73f8d296b73c99e70cdb46bba64 100644 --- a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice36.cpp +++ b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice36.cpp @@ -397,15 +397,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -420,24 +420,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, 0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { try { @@ -455,7 +455,7 @@ void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficie IntT approx; if (__builtin_add_overflow(part1, part2, &approx)) - throw Error("Overflow (in TestDisplayMultiply<IntT>::Display())!"); + throw Error("Overflow (in TestDisplaySumOfMultiply<IntT>::Display())!"); PrintLine<IntT>(Nbits, exact, static_cast<double>(approx), oconv.str(), "", RoundToInteger::yes); } @@ -595,7 +595,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065<integer_type>(100000000)); container.Register(new TestDisplayPowerOfTwoApprox035<integer_type>(100000000)); - container.Register(new TestDisplayMultiply<integer_type>(1000000)); + container.Register(new TestDisplaySumOfMultiply<integer_type>(1000000)); Loop(4, 32, 4, container); } diff --git a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice37_constexpr.cpp b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice37_constexpr.cpp index c808aec92e994ff6f4dffb0132568488e2fb739f..b96db382e676a706c9ff3acca19e68df17496af1 100644 --- a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice37_constexpr.cpp +++ b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice37_constexpr.cpp @@ -409,15 +409,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -432,24 +432,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, 0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { try { @@ -467,7 +467,7 @@ void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficie IntT approx; if (__builtin_add_overflow(part1, part2, &approx)) - throw Error("Overflow (in TestDisplayMultiply<IntT>::Display())!"); + throw Error("Overflow (in TestDisplaySumOfMultiply<IntT>::Display())!"); PrintLine<IntT>(Nbits, exact, static_cast<double>(approx), oconv.str(), "", RoundToInteger::yes); } @@ -607,7 +607,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065<integer_type>(100000000)); container.Register(new TestDisplayPowerOfTwoApprox035<integer_type>(100000000)); - container.Register(new TestDisplayMultiply<integer_type>(1000000)); + container.Register(new TestDisplaySumOfMultiply<integer_type>(1000000)); Loop(4, 32, 4, container); } diff --git a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice37_struct.cpp b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice37_struct.cpp index acaa788f71d60914abebd56d1db0841baf8517a3..dc4af43d8df392d0d5ee4775507ddd8871b9bfae 100644 --- a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice37_struct.cpp +++ b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice37_struct.cpp @@ -432,15 +432,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -455,24 +455,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, 0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { try { @@ -490,7 +490,7 @@ void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficie IntT approx; if (__builtin_add_overflow(part1, part2, &approx)) - throw Error("Overflow (in TestDisplayMultiply<IntT>::Display())!"); + throw Error("Overflow (in TestDisplaySumOfMultiply<IntT>::Display())!"); PrintLine<IntT>(Nbits, exact, static_cast<double>(approx), oconv.str(), "", RoundToInteger::yes); } @@ -630,7 +630,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApprox065<integer_type>(100000000)); container.Register(new TestDisplayPowerOfTwoApprox035<integer_type>(100000000)); - container.Register(new TestDisplayMultiply<integer_type>(1000000)); + container.Register(new TestDisplaySumOfMultiply<integer_type>(1000000)); Loop(4, 32, 4, container); } diff --git a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice38.cpp b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice38.cpp index 944e26d6fdfe8e8874ae878376618d818fa7cb07..e4678c739eb66a3734abdc0e250fb08d853db41a 100644 --- a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice38.cpp +++ b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice38.cpp @@ -469,15 +469,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -492,24 +492,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, -0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { try { @@ -527,7 +527,7 @@ void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficie IntT approx; if (__builtin_add_overflow(part1, part2, &approx)) - throw Error("Overflow (in TestDisplayMultiply<IntT>::Display())!"); + throw Error("Overflow (in TestDisplaySumOfMultiply<IntT>::Display())!"); PrintLine<IntT>(Nbits, exact, static_cast<double>(approx), oconv.str(), "", RoundToInteger::yes); } @@ -667,7 +667,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApproxMinus065<integer_type>(100000000)); container.Register(new TestDisplayPowerOfTwoApprox035<integer_type>(100000000)); - container.Register(new TestDisplayMultiply<integer_type>(1000000)); + container.Register(new TestDisplaySumOfMultiply<integer_type>(1000000)); Loop(4, 32, 4, container); } diff --git a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice39.cpp b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice39.cpp index f9e7cd7b5ac691ce279978b9b2e09594f4655057..45381f18b588bba57482b57d06faa76facd62f15 100644 --- a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice39.cpp +++ b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice39.cpp @@ -470,15 +470,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -493,24 +493,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, -0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { try { @@ -528,7 +528,7 @@ void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficie IntT approx; if (__builtin_add_overflow(part1, part2, &approx)) - throw Error("Overflow (in TestDisplayMultiply<IntT>::Display())!"); + throw Error("Overflow (in TestDisplaySumOfMultiply<IntT>::Display())!"); PrintLine<IntT>(Nbits, exact, static_cast<double>(approx), oconv.str(), "", RoundToInteger::yes); } @@ -637,7 +637,7 @@ int main(int argc, char** argv) container.Register(new TestDisplayPowerOfTwoApproxMinus065<integer_type>(100000000)); container.Register(new TestDisplayPowerOfTwoApprox035<integer_type>(100000000)); - container.Register(new TestDisplayMultiply<integer_type>(1000000)); + container.Register(new TestDisplaySumOfMultiply<integer_type>(1000000)); Loop(4, 32, 4, container); } diff --git a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice40.cpp b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice40.cpp index e538579274753569ac7c8b19b81b8a082803d292..d8c57676aeb06f451fc3d1f6a1f7a66d6f022d3a 100644 --- a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice40.cpp +++ b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice40.cpp @@ -471,15 +471,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -494,24 +494,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, -0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { try { @@ -529,7 +529,7 @@ void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficie IntT approx; if (__builtin_add_overflow(part1, part2, &approx)) - throw Error("Overflow (in TestDisplayMultiply<IntT>::Display())!"); + throw Error("Overflow (in TestDisplaySumOfMultiply<IntT>::Display())!"); PrintLine<IntT>(Nbits, exact, static_cast<double>(approx), oconv.str(), "", RoundToInteger::yes); } @@ -627,7 +627,7 @@ int main(int argc, char** argv) container.Register(std::make_shared<TestDisplayPowerOfTwoApproxMinus065<integer_type>>(100000000)); container.Register(std::make_shared<TestDisplayPowerOfTwoApprox035<integer_type>>(100000000)); - container.Register(std::make_shared<TestDisplayMultiply<integer_type>>(1000000)); + container.Register(std::make_shared<TestDisplaySumOfMultiply<integer_type>>(1000000)); Loop(4, 32, 4, container); } diff --git a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice41.cpp b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice41.cpp index 7686d75b7ce3b0a9f8ca66227943176edb083f0e..f121303a9a688f4aee4d3b12d571f458df4df361 100644 --- a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice41.cpp +++ b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice41.cpp @@ -471,15 +471,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -494,24 +494,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, -0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { try { @@ -529,7 +529,7 @@ void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficie IntT approx; if (__builtin_add_overflow(part1, part2, &approx)) - throw Error("Overflow (in TestDisplayMultiply<IntT>::Display())!"); + throw Error("Overflow (in TestDisplaySumOfMultiply<IntT>::Display())!"); PrintLine<IntT>(Nbits, exact, static_cast<double>(approx), oconv.str(), "", RoundToInteger::yes); } @@ -627,7 +627,7 @@ int main(int argc, char** argv) container.Register(std::make_unique<TestDisplayPowerOfTwoApproxMinus065<integer_type>>(100000000)); container.Register(std::make_unique<TestDisplayPowerOfTwoApprox035<integer_type>>(100000000)); - container.Register(std::make_unique<TestDisplayMultiply<integer_type>>(1000000)); + container.Register(std::make_unique<TestDisplaySumOfMultiply<integer_type>>(1000000)); Loop(4, 32, 4, container); } diff --git a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice42.cpp b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice42.cpp index 759af4a4ac8cf21c78cc2e3d5278e2a1bbc46f86..6e0f79e51a44d6475615099ced7e8aed5e0525ae 100644 --- a/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice42.cpp +++ b/HandsOn/5-UsefulConceptsAndSTL/Solution/exercice42.cpp @@ -471,15 +471,15 @@ void TestDisplayPowerOfTwoApprox035<IntT>::operator()(int Nbits) const template<class IntT> -class TestDisplayMultiply : public TestDisplay +class TestDisplaySumOfMultiply : public TestDisplay { public: //! Constructor. - explicit TestDisplayMultiply(int resolution); + explicit TestDisplaySumOfMultiply(int resolution); //! To make the class a concrete one. - virtual ~TestDisplayMultiply() override; + virtual ~TestDisplaySumOfMultiply() override; //! Display the output for the chosen `Nbits`. @@ -494,24 +494,24 @@ private: template<class IntT> -TestDisplayMultiply<IntT>::TestDisplayMultiply(int resolution) +TestDisplaySumOfMultiply<IntT>::TestDisplaySumOfMultiply(int resolution) : TestDisplay(resolution) { } template<class IntT> -TestDisplayMultiply<IntT>::~TestDisplayMultiply() = default; +TestDisplaySumOfMultiply<IntT>::~TestDisplaySumOfMultiply() = default; template<class IntT> -void TestDisplayMultiply<IntT>::operator()(int Nbits) const +void TestDisplaySumOfMultiply<IntT>::operator()(int Nbits) const { Display(Nbits, -0.65, static_cast<IntT>(3515), 0.35, static_cast<IntT>(4832)); } template<class IntT> -void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const +void TestDisplaySumOfMultiply<IntT>::Display(int Nbits, double value1, IntT coefficient1, double value2, IntT coefficient2) const { try { @@ -529,7 +529,7 @@ void TestDisplayMultiply<IntT>::Display(int Nbits, double value1, IntT coefficie IntT approx; if (__builtin_add_overflow(part1, part2, &approx)) - throw Error("Overflow (in TestDisplayMultiply<IntT>::Display())!"); + throw Error("Overflow (in TestDisplaySumOfMultiply<IntT>::Display())!"); PrintLine<IntT>(Nbits, exact, static_cast<double>(approx), oconv.str(), "", RoundToInteger::yes); } @@ -574,7 +574,7 @@ int main(int argc, char** argv) container.emplace_back(std::make_unique<TestDisplayPowerOfTwoApproxMinus065<integer_type>>(100000000)); container.emplace_back(std::make_unique<TestDisplayPowerOfTwoApprox035<integer_type>>(100000000)); - container.emplace_back(std::make_unique<TestDisplayMultiply<integer_type>>(1000000)); + container.emplace_back(std::make_unique<TestDisplaySumOfMultiply<integer_type>>(1000000)); Loop(4, 32, 4, container); } diff --git a/HandsOn/6-InRealEnvironment/Solution/Exercice43/main.cpp b/HandsOn/6-InRealEnvironment/Solution/Exercice43/main.cpp index abdf6cfe959cc60e676ee9f42b5e46e9490e9e06..ead85e17ccd2c2a8f2bfb847bf8ad3c76fb1f8d8 100644 --- a/HandsOn/6-InRealEnvironment/Solution/Exercice43/main.cpp +++ b/HandsOn/6-InRealEnvironment/Solution/Exercice43/main.cpp @@ -41,7 +41,7 @@ int main(int argc, char** argv) container.emplace_back(std::make_unique<TestDisplayPowerOfTwoApproxMinus065<integer_type>>(100000000)); container.emplace_back(std::make_unique<TestDisplayPowerOfTwoApprox035<integer_type>>(100000000)); - container.emplace_back(std::make_unique<TestDisplayMultiply<integer_type>>(1000000)); + container.emplace_back(std::make_unique<TestDisplaySumOfMultiply<integer_type>>(1000000)); Loop(4, 32, 4, container); }