code: изменение input_data(), добавление параметра promt

Этот коммит содержится в:
2025-06-02 00:49:59 +03:00
родитель c0463ac76a
Коммит 7d81ddebaf

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

@@ -9,43 +9,56 @@
using namespace std; using namespace std;
//Ñîçäàíèå ñòðóêòóðû Input äëÿ âõîäíûõ äàííûõ //Ñîçäàíèå ñòðóêòóðû Input äëÿ âõîäíûõ äàííûõ
struct Input { struct Input
vector<double> Numbers; {
size_t bin_count{}; vector<double> Numbers;
}; size_t bin_count{};
};
//Ôóíêöèÿ ââîäà //Ôóíêöèÿ ââîäà
Input input_data(istream& in){ Input input_data(istream& in, bool prompt)
{
size_t number_count; size_t number_count;
Input stct; Input stct;
//Ââîä êîëè÷åñòâà ýëåìåíòîâ ìàññèâà //Ââîä êîëè÷åñòâà ýëåìåíòîâ ìàññèâà
cerr << "Enter number count "; if (promt)
in >> number_count; {
cerr << "Enter number count ";
}
in >> number_count;
//Ââîä ìàññèâà //Ââîä ìàññèâà
vector<double> Numbers(number_count); vector<double> Numbers(number_count);
stct.Numbers.resize(number_count); stct.Numbers.resize(number_count);
cerr << "Enter array:\n"; if (promt)
in >> stct.Numbers[0]; {
for (int i = 1; i < number_count; i++) { cerr << "Enter array:\n";
in >> stct.Numbers[i]; }
} in >> stct.Numbers[0];
//Ââîä êîëè÷åñòâà êîðçèí for (int i = 1; i < number_count; i++)
cerr << "Enter bin count\n"; {
in >> stct.bin_count; in >> stct.Numbers[i];
//Âîçâðàùàåì ñòðóêòóðó }
return stct; //Ââîä êîëè÷åñòâà êîðçèí
if (promt)
{
cerr << "Enter bin count\n";
}
in >> stct.bin_count;
//Âîçâðàùàåì ñòðóêòóðó
return stct;
} }
int main() { int main()
//Ââîä ìàññèâà è êîëè÷åñòâà êîðçèí {
auto in = input_data(cin); //Ââîä ìàññèâà è êîëè÷åñòâà êîðçèí
auto in = input_data(cin);
//Ñîçäàíèå âåêòîðà bins äëÿ ãèñòîãðàììû //Ñîçäàíèå âåêòîðà bins äëÿ ãèñòîãðàììû
vector<size_t> bins = make_histogram(in.Numbers, in.bin_count); vector<size_t> bins = make_histogram(in.Numbers, in.bin_count);
//Âûâîä ãèñòîãðàììû //Âûâîä ãèñòîãðàììû
show_histogram_svg(bins); show_histogram_svg(bins);
//show_histogram_text(bins); //show_histogram_text(bins);
return 0; return 0;
} }