|  |  | @ -20,7 +20,7 @@ input_data(){ | 
			
		
	
		
		
			
				
					
					|  |  |  |     cin >> in.bin_count; |  |  |  |     cin >> in.bin_count; | 
			
		
	
		
		
			
				
					
					|  |  |  | return in; |  |  |  | return in; | 
			
		
	
		
		
			
				
					
					|  |  |  | } |  |  |  | } | 
			
		
	
		
		
			
				
					
					|  |  |  |     void find_minmax(vector<double> numbers, double& min, double& max) { |  |  |  |     void find_minmax(const vector<double>& numbers, double& min, double& max) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |     min = numbers[0]; |  |  |  |     min = numbers[0]; | 
			
		
	
		
		
			
				
					
					|  |  |  |     max = numbers[0]; |  |  |  |     max = numbers[0]; | 
			
		
	
		
		
			
				
					
					|  |  |  |     for (double x : numbers) { |  |  |  |     for (double x : numbers) { | 
			
		
	
	
		
		
			
				
					|  |  | @ -32,18 +32,15 @@ return in; | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | } |  |  |  | } | 
			
		
	
		
		
			
				
					
					|  |  |  | } |  |  |  | } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | vector<size_t> make_histogram(const vector<double>& numbers,size_t bin_count){ | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | int main() |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | {   Input in = input_data(); |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |     double max,min; |  |  |  |     double max,min; | 
			
		
	
		
		
			
				
					
					|  |  |  |     find_minmax(in.numbers,min,max); |  |  |  |     find_minmax(numbers,min,max); | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |     double bin_size = (max - min) / in.bin_count; |  |  |  |     double bin_size = (max - min) / bin_count; | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         vector<size_t> bins(in.bin_count); |  |  |  |         vector<size_t> bins(bin_count); | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         for(double x:in.numbers) |  |  |  |         for(double x:numbers) | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |      { |  |  |  |      { | 
			
		
	
		
		
			
				
					
					|  |  |  |         bool found = false; |  |  |  |         bool found = false; | 
			
		
	
		
		
			
				
					
					|  |  |  |     for (size_t j = 0; (j < in.bin_count - 1) && !found; j++) { |  |  |  |     for (size_t j = 0; (j < bin_count - 1) && !found; j++) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |         auto lo = min + j * bin_size; |  |  |  |         auto lo = min + j * bin_size; | 
			
		
	
		
		
			
				
					
					|  |  |  |         auto hi = min + (j + 1) * bin_size; |  |  |  |         auto hi = min + (j + 1) * bin_size; | 
			
		
	
		
		
			
				
					
					|  |  |  |         if ((lo <= x) && (x < hi)) { |  |  |  |         if ((lo <= x) && (x < hi)) { | 
			
		
	
	
		
		
			
				
					|  |  | @ -52,12 +49,21 @@ int main() | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  |     if (!found) |  |  |  |     if (!found) | 
			
		
	
		
		
			
				
					
					|  |  |  |         bins[in.bin_count-1]++; |  |  |  |         bins[bin_count-1]++; | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     return bins; | 
			
		
	
		
		
			
				
					
					|  |  |  | } |  |  |  | } | 
			
		
	
		
		
			
				
					
					|  |  |  |     for(size_t i=0;i<in.bin_count;i++){ |  |  |  | void show_histogram(vector<size_t> bins,size_t bin_count){ | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     for(size_t i=0;i<bin_count;i++){ | 
			
		
	
		
		
			
				
					
					|  |  |  |         cout<<bins[i]<<"|"; |  |  |  |         cout<<bins[i]<<"|"; | 
			
		
	
		
		
			
				
					
					|  |  |  |         for(size_t j=0;j<bins[i];j++) |  |  |  |         for(size_t j=0;j<bins[i];j++) | 
			
		
	
		
		
			
				
					
					|  |  |  |             cout<<"*"; |  |  |  |             cout<<"*"; | 
			
		
	
		
		
			
				
					
					|  |  |  |         cout<<endl;} |  |  |  |         cout<<endl;} | 
			
		
	
		
		
			
				
					
					|  |  |  | } |  |  |  | } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | int main() | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | {   auto in = input_data(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     auto bins=make_histogram(in.numbers,in.bin_count); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     show_histogram(bins,in.bin_count); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | 
 |