code: Функция вывода гистограммы

master
Данил Гордиевских 1 год назад
Родитель 5fe3586d4d
Сommit 0b40695ba8

@ -8,8 +8,7 @@ struct Input {
int NCharts = 0; int NCharts = 0;
}; };
Input Input input_data() {
input_data() {
Input in; Input in;
int VecSize = 0; int VecSize = 0;
cin >> VecSize; cin >> VecSize;
@ -21,22 +20,19 @@ input_data() {
return in; return in;
}; };
int main() void show_histogram_text(const vector<double>& marks, const vector<double>& chart) {
{ int VecSize = size(marks);
const int shift = 4, maxlen = 80; const int shift = 4, maxlen = 80;
Input in = input_data();
int VecSize = size(in.marks);
double interval = 0, inp = 0, i = 0, min = 0, max = 0, scale = 1; double interval = 0, inp = 0, i = 0, min = 0, max = 0, scale = 1;
vector <double> chart = MakeHistogram(in.marks, in.NCharts);
FindMinMax(chart, min, max); FindMinMax(chart, min, max);
if ((max+shift) > maxlen) { if ((max + shift) > maxlen) {
scale = (max+shift) / maxlen; scale = (max + shift) / maxlen;
} }
for (i = 0; i < in.NCharts; i++) { for (i = 0; i < size(chart); i++) {
if (chart[i] < 10) { if (chart[i] < 10) {
cout << " "; cout << " ";
} }
else if (9 < chart[i] && chart[i]< 100) { else if (9 < chart[i] && chart[i] < 100) {
cout << " "; cout << " ";
} }
cout << chart[i] << "|"; cout << chart[i] << "|";
@ -49,4 +45,11 @@ int main()
} }
cout << "\n"; cout << "\n";
} }
};
int main()
{
Input in = input_data();
vector <double> chart = MakeHistogram(in.marks, in.NCharts);
show_histogram_text(in.marks, chart);
} }
Загрузка…
Отмена
Сохранить