#include #include #include using namespace std; const size_t SCREEN_WIDTH = 80; const size_t MAX_ASTERISK = SCREEN_WIDTH - 3 - 1; void show_histogram(size_t bin_count, std::vector bins, std::vector procent){ size_t max_count = 0; for (size_t x: bins) { if (x > max_count) { max_count = x; } } if (max_count > MAX_ASTERISK) { for (size_t i = 0; i < bin_count ; i++) { size_t height = MAX_ASTERISK * (static_cast(bins[i]) / max_count); if (bins[i] < 10) { cout << " " << procent[i] << "%|"; } else if (bins[i] >= 100) { cout << procent[i] << "%|"; } else { cout << " " << procent[i] << "%|"; } for (size_t i = 0; i < height; i++) { cout << "*"; } cout << "\n"; } } else { for (size_t i = 0; i < bin_count; i++) { if (procent[i] < 10) { cout << " " << procent[i] << "%|"; } else if (procent[i] < 100){ cout << " " << procent[i] << "%|"; } else if (procent[i] = 100){ cout << procent[i] << "%|"; } for (size_t r = 0; r < bins[i]; r++) cout << "*"; cout << "\n"; } } }