#include <iostream> #include <vector> #include "text.h" using namespace std; void show_histogram_text(vector<size_t> bins, size_t bin_count) { const size_t screen_width = 80; const size_t max_asterisk = screen_width - 3 - 1; size_t i,j; double max_count; max_count = bins[0]; for (i=0; i< bin_count; i++) { if (max_count<bins[i]) { max_count=bins[i]; } } size_t height; bool flag = false; if(max_count>max_asterisk) { flag=true; } for (j = 0; j < bin_count; j++) { if (bins[j] < 100) { cout << " "; } if (bins[j] < 10) { cout << " "; } cout << bins[j] << "|"; if (flag) { height = max_asterisk * (static_cast<double>(bins[j]) / max_count); } else { height=bins[j]; } for (i = 0; i < height; i++) { cout << "*"; } cout << endl; } }