diff --git a/main.cpp b/main.cpp index 668bd58..add06c3 100644 --- a/main.cpp +++ b/main.cpp @@ -1,6 +1,9 @@ #include #include +const size_t SCREEN_WIDTH = 80; +const size_t MAX_ASTERISK = SCREEN_WIDTH - 3 - 1; + using namespace std; struct Input { vector numbers; @@ -19,8 +22,7 @@ input_data() { cin >> in.bin_count; return in; } -void -find_minmax(const vector& numbers, double& Min, double& Max) { +void find_minmax(const vector& numbers, double& Min, double& Max) { Min = numbers[0]; Max = numbers[0]; for(size_t x : numbers) @@ -64,9 +66,32 @@ make_histogram(vector numbers, size_t bin_count) } return bins; } +void show_histogram_text(vector bins, size_t bin_count) +{ + size_t max_count = bins[0]; + for(size_t x : bins) + { + if(x > max_count) + { + max_count = x; + } + } + for(size_t i = 0;i MAX_ASTERISK) + height = MAX_ASTERISK * (static_cast(bins[i]) / max_count); + for(size_t j = 0;j