diff --git a/.gitignore b/.gitignore index 8e4ec46..6175242 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ lab03.cbp lab03.depend unittest.depend unittest.cbp +/curl +lab03.layout diff --git a/main.cpp b/main.cpp index d98e990..7e0515d 100644 --- a/main.cpp +++ b/main.cpp @@ -3,6 +3,7 @@ #include "histogram.h" #include "svg.h" #include "show_svg.h" +#include using namespace std; struct Input { @@ -13,29 +14,39 @@ struct Input { }; Input -input_data() { +input_data(istream& stream, bool prompt) { + size_t number_count; + if (prompt) { + cerr << "Enter number count: "; + } + stream >> number_count; + Input in; - cerr << "Enter number count: "; - cin >> in.number_count; + in.numbers.resize(number_count); + + + if (prompt){ + cerr << "Enter numbers: "; + } + for (size_t i = 0; i < number_count; i++) + { + stream >> in.numbers[i]; + } - vector numbers(in.number_count); - in.numbers.resize(in.number_count); - for (size_t i = 0; i < in.number_count; i++) { - cin >> in.numbers[i]; + if (prompt){ + cerr << "Enter number of bins: "; } + stream >> in.bin_count; - size_t bin_count; - cerr << "Enter bin count: "; - cin >> in.bin_count; - size_t max_count; - in.max_count = 0; return in; } int main() { - Input in = input_data(); + curl_global_init(CURL_GLOBAL_ALL); + bool prompt = true; + auto in = input_data(cin, prompt); vector bins = make_histogram(in.numbers, in.bin_count, in.number_count, in.max_count); show_histogram_svg(bins); return 0;