diff --git a/CPlusPlus20ForProgrammers-master/examples/ch06/a.out b/CPlusPlus20ForProgrammers-master/examples/ch06/a.out index 6276749..a2b6382 100755 Binary files a/CPlusPlus20ForProgrammers-master/examples/ch06/a.out and b/CPlusPlus20ForProgrammers-master/examples/ch06/a.out differ diff --git a/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_04.cpp b/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_04.cpp index 6653c4a..aad9c74 100644 --- a/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_04.cpp +++ b/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_04.cpp @@ -8,11 +8,15 @@ int main() { constexpr size_t arraySize{5}; // must initialize in declaration std::array values{}; // array values has 5 elements - +/* for (size_t i{0}; i < values.size(); ++i) { // set the values values.at(i) = 2 + 2 * i; } - +*/ + for ( int index{0}; int& value : values) { + value = 2 + 2 * index; + index++; + } // output contents of array values in tabular format for (const int& value : values) { std::cout << value << "\n"; diff --git a/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_06.cpp b/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_06.cpp index d9fb96f..94e6b07 100644 --- a/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_06.cpp +++ b/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_06.cpp @@ -1,6 +1,6 @@ // fig06_06.cpp // Printing a student grade distribution as a primitive bar chart. -#include + #include #include diff --git a/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_07.cpp b/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_07.cpp index 77540c1..941e3ae 100644 --- a/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_07.cpp +++ b/CPlusPlus20ForProgrammers-master/examples/ch06/fig06_07.cpp @@ -11,19 +11,25 @@ int main() { std::default_random_engine engine{rd()}; // rd() produces a seed std::uniform_int_distribution randomDie{0, 6}; + std::uniform_real_distribution randomReal{0, 1}; + constexpr size_t arraySize{7}; // ignore element zero std::array frequency{}; // initialize to 0s + + constexpr size_t N{7}; + std::array histogram{}; + // roll die 60,000,000 times; use die value as frequency index for (int roll{1}; roll <= 60'000'000; ++roll) { - ++frequency.at(randomDie(engine)); + randomReal(engine); } std::cout << "Face " << " Frequency \n"; // output each array element's value - for (size_t face{1}; face < frequency.size(); ++face) { - std::cout << face << " " << frequency.at(face) << "\n"; + for (size_t face{1}; face < histogram.size(); ++face) { + std::cout << face << " " << histogram.at(face) << "\n"; } }