#include <iostream>
#include <vector>
#include <curl/curl.h>
#include "histogram.h"
#include "text.h"
#include "svg.h"


using namespace std;

 struct Input {
        vector<double> numbers;
        size_t bin_count{};
        size_t number_count;

};

Input
input_data(istream& in){  //& òê íåëüçÿ ñêîïèðîâàòü ïîòîê ââîäà   istream óïðàâëÿåò èçâëå÷åíèåì îáúåêòîâ

    setlocale(LC_ALL, "RUSSIAN");

    Input in2;

    bool prompt = true;
    if (prompt) cerr << "Ââåäèòå êîëè÷åñòâî ÷èñåë: ";
    in >> in2.number_count;



    in2.numbers.resize(in2.number_count);

    if (prompt) cerr << "Ââåäèòå ÷åðåç ïðîáåë ýëåìåíòû ìàññèâà: ";

    vector<double> numbers(in2.number_count);
    for (size_t i = 0; i < in2.number_count; i++) {
        in >> in2.numbers[i];
    }

    if (prompt) cerr << "Ââåäèòå êîëè÷åñòâî êîðçèí: ";
    in >> in2.bin_count;

    return in2;
};


int
main(){

    curl_global_init(CURL_GLOBAL_ALL);

    auto in = input_data(cin);
    auto bins = make_histogram(in.numbers, in.bin_count);
    show_histogram_text(bins, in.number_count, in.bin_count);

    return 0;
}


// cin - ïåðåìåííàÿ êîòîðàÿ ïðåäñòàâëÿåò ïîòîê