функция гистограммы

Этот коммит содержится в:
2025-09-25 22:20:27 +03:00
родитель 8c0597f45f
Коммит 81b2fd6ee1

Просмотреть файл

@@ -39,18 +39,23 @@ void find_minmax(const vector<double>& numbers, double& min, double& max) {
}
}
vector<size_t> make_histogram(const vector<double>& numbers, size_t bin_count) {
double min, max;
find_minmax(numbers, min, max);
vector<size_t> bins(bin_count);
for (double x : numbers) {
size_t bin_index = (x - min) / (max - min) * bin_count;
if (bin_index == bin_count) bin_index--;
bins[bin_index]++;
}
return bins;
}
int main() {
auto in = input_data();
double min, max;
find_minmax(in.numbers, min, max);
vector<size_t> bins(in.bin_count);
for (double x : in.numbers) {
size_t bin_index = (x - min) / (max - min) * in.bin_count;
if (bin_index == in.bin_count) bin_index--;
bins[bin_index]++;
}
auto bins = make_histogram(in.numbers, in.bin_count);
const size_t SCREEN_WIDTH = 80;
size_t max_count = 0;