#include "text.h" #include using namespace std; void show_histogram_text(const vector& bins) { const size_t SCREEN_WIDTH = 80; const size_t MAX_ASTERISK = SCREEN_WIDTH - 4; size_t max_bin_count = 0; for (size_t bin : bins) { if (bin > max_bin_count) { max_bin_count = bin; } } if (max_bin_count <= MAX_ASTERISK) { for (size_t bin : bins) { if (bin < 10) cout << " "; cout << " " << bin << "|"; for (size_t j = 0; j < bin; j++) { cout << "*"; } cout << endl; } } else { for (size_t bin : bins) { size_t height = static_cast(MAX_ASTERISK * (static_cast(bin) / max_bin_count)); if (bin < 100) cout << " "; if (bin < 10) cout << " "; cout << bin << "|"; for (size_t j = 0; j < height; j++) { cout << "*"; } cout << endl; } } }