commit 52751e406515c2195381e5f9a978b0d402604216
Author: Lab1 (ChaginSA) <ChaginSA@mpei.ru>
Date:   Sun May 14 18:07:39 2023 +0300

    first commit

diff --git a/main.cpp b/main.cpp
new file mode 100644
index 0000000..159f12d
--- /dev/null
+++ b/main.cpp
@@ -0,0 +1,66 @@
+#include <iostream>
+#include <vector>
+using namespace std;
+
+int main()
+{
+unsigned int  n;
+size_t number_count;
+size_t bin_count;
+double maxx, minn;
+
+cerr << "Enter number count: "; cin >> number_count;
+cerr << "Enter bin count: "; cin >> bin_count;
+
+vector <double> numbers (number_count);
+for (int i = 0; i < number_count; i++){
+       cerr << "Enter [" << i << "]: "; cin >> numbers[i];
+}
+
+maxx = numbers[0];
+minn = numbers[0];
+for (int i = 0; i < number_count; i++){
+        if (numbers[i] < minn)
+                    minn = numbers[i];
+        if (numbers[i] > maxx)
+                    maxx = numbers[i];
+}
+vector<size_t> bins(bin_count);
+double bin_size = (maxx - minn) / bin_count;
+
+for (size_t i = 0; i < number_count; i++){
+          bool found = false;
+          for (size_t j = 0; (j < bin_count - 1) && !found; j++){
+                  auto lo = minn + j * bin_size;
+                  auto hi = minn + (j + 1) * bin_size;
+                  if ((lo <= numbers[i]) && (numbers[i] < hi)){
+                           bins[j]++;
+                           found = true;
+                   }
+           }
+           if (!found){
+                 bins[bin_count - 1]++;
+           }
+}
+int r[20];
+r[0]=0;
+for (size_t i = 0; i < bin_count; i++){
+        r[i+1]=r[i]+bins[i];
+}
+int maxbin=0;
+for (size_t i = 0; i < bin_count; i++){
+       if ( r[i+1] > maxbin) maxbin = r[i+1];
+}
+float k=1;
+//k= 76.00 / maxbin;
+for (size_t i = 0; i < bin_count; i++){
+        if (r[i+1]<10) cout << " ";
+        if (r[i+1]<100) cout << " ";
+         cout << r[i+1] << "|";
+         for (size_t j = 0; j <k*(r[i+1]); j++) {
+                cout << "*" ;
+         }
+         cout << endl;
+}
+return 0;
+}