#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 - 3 - 1; auto bin_count = bins.size(); size_t max_count = 0; for (size_t i = 0; i < bin_count; i++){ size_t Count = bins[i]; if (max_count < Count){ max_count = Count; } } if (max_count <= MAX_ASTERISK){ for (size_t i = 0; i < bin_count; i++){ size_t Count = bins[i]; if (Count < 100){ cout << " "; } if (Count < 10){ cout << " "; } cout << Count << "|"; for (size_t j = 0; j < Count; j++){ cout << "*"; } cout << "\n"; } } else{ for (size_t i = 0; i < bin_count; i++){ size_t Count = bins[i]; size_t height = 76 * (static_cast(Count) / max_count); if (Count < 100){ cout << " "; } if (Count < 10){ cout << " "; } cout << Count << "|"; for (size_t j = 0; j < height; j++){ cout << "*"; } cout << "\n"; } } }