diff --git a/main.cpp b/main.cpp index fef940c..93b25ec 100644 --- a/main.cpp +++ b/main.cpp @@ -47,7 +47,7 @@ void find_minmax(const vector<double>& numbers, double& Min, double& Max){ } //������� ������� ����������� -vector<size_t> make_histogram(vector<double> Numbers, size_t bin_count){ +vector<size_t> make_histogram(const vector<double>& Numbers, size_t bin_count){ //����������� ���� ����� ��������� double Max, Min; find_minmax(Numbers, Min, Max); @@ -67,36 +67,12 @@ vector<size_t> make_histogram(vector<double> Numbers, size_t bin_count){ return bins; } -int main() { +//������� ����������� � ��������������� ����������� +void show_histogram_text(const vector<size_t>& bins){ const size_t SCREEN_WIDTH = 80; const size_t MAX_ASTERISK = SCREEN_WIDTH - 3 - 3; - //���� ������� � ���������� ������ - Input in = input_data(); - - //����������� �������� � ��������� - double max, min; - find_minmax(in.Numbers, min, max); - - // - vector<size_t> bins = make_histogram(in.Numbers, in.bin_count); - - /* - //����������� ���� ����� ��������� - double bin_size = (max - min) / bin_count; - //������ ������ - vector<size_t> bins(bin_count); - for (size_t i = 0; i < bin_count; i++) // ��������� ������ - bins[i] = 0; - for (size_t i = 0; i < bin_count; i++) { - double lo = min + i * bin_size; - double hi = min + (i + 1) * bin_size; - for (size_t j = 0; j < number_count; j++) { - if (lo <= Numbers[j] && Numbers[j] <= hi) - bins[i]++; - } - } - //�������� ������������� ��������������� + //�������� ������������� ��������������� size_t max4scale = 0; for (size_t x : bins){ if (x > max4scale){ @@ -140,6 +116,22 @@ int main() { cout << "\n"; } } - */ + return; +} + +int main() { + //���� ������� � ���������� ������ + Input in = input_data(); + + //����������� �������� � ��������� + double max, min; + find_minmax(in.Numbers, min, max); + + //�������� ������� bins ��� ����������� + vector<size_t> bins = make_histogram(in.Numbers, in.bin_count); + + // + show_histogram_text(bins); + return 0; }