#include "histogram.h" #include "text.h" #include "svg.h" struct Input { vector vec; size_t korz{}; size_t block_width{}; }; Input input_data() { Input in; size_t n, korz; cerr << "Number of elements: "; cin >> n; in.vec.resize(n); cerr << "Elements: "; for (size_t i = 0; i < n; i++) cin >> in.vec[i]; cerr << "Enter bin count: "; cin >> in.korz; cerr << "Enter block width in px (3-30): "; cin >> in.block_width; while (in.block_width < 3 || in.block_width > 30) { if (in.block_width < 3) { cerr << "Block width too small! Minimum is 3px. Please enter again: "; } else { cerr << "Block width too large! Maximum is 30px. Please enter again: "; } cin >> in.block_width; } return in; } int main() { auto in = input_data(); auto bins = make_histogram(in.korz, in.vec); show_histogram_svg(bins, in.block_width); }