Родитель
							
								
									35d436acdc
								
							
						
					
					
						Сommit
						863e33dc7e
					
				| @ -0,0 +1,56 @@ | ||||
| #include <iostream> | ||||
| #include <vector> | ||||
| #include <algorithm> | ||||
| 
 | ||||
| int main() { | ||||
|     // Ввод количества чисел и самих чисел
 | ||||
|     std::cout << "Введите количество чисел: "; | ||||
|     int n; | ||||
|     std::cin >> n; | ||||
| 
 | ||||
|     std::vector<int> numbers(n); | ||||
|     std::cout << "Введите числа: "; | ||||
|     for(int i = 0; i < n; i++) { | ||||
|         std::cin >> numbers[i]; | ||||
|     } | ||||
| 
 | ||||
|     // Определение границ диапазона
 | ||||
|     int min_val = *std::min_element(numbers.begin(), numbers.end()); | ||||
|     int max_val = *std::max_element(numbers.begin(), numbers.end()); | ||||
| 
 | ||||
|     // Ввод количества интервалов (корзин)
 | ||||
|     std::cout << "Введите количество корзин: "; | ||||
|     int bins; | ||||
|     std::cin >> bins; | ||||
| 
 | ||||
|     // Создание массива для хранения количества чисел в каждой корзине
 | ||||
|     std::vector<int> histogram(bins, 0); | ||||
| 
 | ||||
|     // Вычисление ширины интервала
 | ||||
|     double bin_width = static_cast<double>(max_val - min_val) / bins; | ||||
| 
 | ||||
|     // Заполнение гистограммы
 | ||||
|     for (int i = 0; i < n; i++) { | ||||
|         int bin_index = (numbers[i] - min_val) / bin_width; | ||||
|         if(bin_index == bins) { | ||||
|             bin_index--; | ||||
|         } | ||||
|         histogram[bin_index]++; | ||||
|     } | ||||
| 
 | ||||
|     // Преобразование гистограммы в нарастающий итог
 | ||||
|     for (int i = 1; i < bins; i++) { | ||||
|         histogram[i] += histogram[i-1]; | ||||
|     } | ||||
| 
 | ||||
|     // Отображение гистограммы
 | ||||
|     for(int i = 0; i < bins; i++) { | ||||
|         std::cout << histogram[i] << "|"; | ||||
|         for(int j = 0; j < histogram[i]; j++) { | ||||
|             std::cout << "*"; | ||||
|         } | ||||
|         std::cout << std::endl; | ||||
|     } | ||||
| 
 | ||||
|     return 0; | ||||
| } | ||||
					Загрузка…
					
					
				
		Ссылка в новой задаче