diff --git a/main.cpp b/main.cpp
index c2c5560..6470052 100644
--- a/main.cpp
+++ b/main.cpp
@@ -2,19 +2,48 @@
 #include <vector>
 using namespace std;
 
-int main()
+const size_t SCREEN_WIDTH = 80;
+const size_t MAX_ASTERISK = SCREEN_WIDTH - 3 - 1;
+
+struct Input {
+    vector<double> numbers;
+    size_t bin_count{};
+};
+
+Input
+input_data(){
+    size_t number_count;
+    cerr << "Enter number_count: ";
+    cin >> number_count;
+
+    Input in;
+    in.numbers.resize(number_count);
+    cerr << "Enter numbers: ";
+    for (size_t i = 0; i < number_count; i++) {
+        cin >> in.numbers[i];
+    }
+
+    cerr << "Enter bin count: ";
+    cin >> in.bin_count;
+
+    return in;
+
+}
+
+int
+main()
 {
-    const size_t SCREEN_WIDTH = 80;
-    const size_t MAX_ASTERISK = SCREEN_WIDTH - 3 - 1;
+    Input in = input_data();
 
-    size_t number_count, bin_count, i, bin;
+    size_t i, bin;
+    //size_t number_count, bin_count, i, bin;
     //cout << "Enter number count: " << endl;
-    cin>>number_count;
-    vector<double> numbers(number_count);
+    //cin>>number_count;
+    //vector<double> numbers(number_count);
     //cout<< "Enter numbers: "<<endl;
-    for (size_t i = 0; i < number_count; i++){
-        cin>>numbers[i];
-    }
+    //for (size_t i = 0; i < number_count; i++){
+    //    cin>>numbers[i];
+    //}
     double min = numbers[0];
     double max = numbers[0];
     for (double x : numbers) {
@@ -27,7 +56,7 @@ int main()
     }
 
     //cout<< "Enter bin count: "<<endl;
-    cin>>bin_count;
+    //cin>>bin_count;
     vector<size_t> bins(bin_count);
     double bin_size = (max - min) / bin_count;