From 063383196f2a8dc5b930e905184acbc17305c346 Mon Sep 17 00:00:00 2001 From: MakhnovGA Date: Wed, 19 Apr 2023 21:57:25 +0300 Subject: [PATCH] =?UTF-8?q?git:=20=D1=81=D0=BE=D0=B7=D0=B4=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=20=D1=80=D0=B5=D0=BF=D0=BE=D0=B7=D0=B8=D1=82=D0=B0?= =?UTF-8?q?=D1=80=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lab_01.cbp | 40 ++++++++++++++++++++++++++++++++++++++++ main.cpp | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 lab_01.cbp create mode 100644 main.cpp diff --git a/lab_01.cbp b/lab_01.cbp new file mode 100644 index 0000000..60802b2 --- /dev/null +++ b/lab_01.cbp @@ -0,0 +1,40 @@ + + + + + + diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..75b6324 --- /dev/null +++ b/main.cpp @@ -0,0 +1,49 @@ +#include +#include +#include +#include +using namespace std; + +int main() { + size_t numbersCount; + cerr << "Numbers count ==>"; cin >> numbersCount; + vector numbers(numbersCount); + + size_t i, j, min, max; + cerr << "Numbers ==>"; + for (i = 0; i < numbersCount; i++) + cin >> numbers[i]; + size_t binCount; + cerr << "Bin count ==>"; cin >> binCount; + vector bins(binCount); + + min = numbers[0]; + max = numbers[0]; + for (i = 1; i < numbersCount; i++) { + if (min > numbers[i]) + min = numbers[i]; + if (max < numbers[i]) + max = numbers[i]; + } + double binSize = (max - min) / (float) binCount; + for (i = 0; i < numbersCount; i++) { + bool found = false; + for (j = 0; (j < binCount - 1) && !found; j++) { + auto lo = min + j * binSize; + auto hi = min + (j + 1) * binSize; + if ((numbers[i] >= lo) && (numbers[i] < hi)) { + bins[j]++; + found = true; + } + } + if (!found) + bins[binCount - 1]++; + } + for (i = 0; i < binCount; i++) { + cout << bins[i] << "|"; + for (j = 0; j < bins[i]; j++) + cout << "*"; + cout << endl; + } + return 0; +}