#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <math.h>
using namespace std;
int N = 100000;
void printStars(int n) {
for(int i=0;i < n;i++) {
cout << "*";
}
cout << endl;
}/// printStars()
void bin(int *counters,double r){
int binNum = floor(r * 10);
if(binNum < 10){
counters[binNum] ++;
}
else
counters[9] ++;
}//bint the number into array
void printResult(int *counters){
for(int i = 0; i < 10; i++){
printStars(floor(100*counters[i]/N)); // prints a chain of nAsterisks *s
// cout << counters[i] ; for test
}
}
int main() {
srand(time(NULL));
cout << "Uniform distribution: " << endl;
int counters[10] = {0};//initial array
for(int i = 0; i < N; i++){
double r=(double)(rand()%100)/100.0;
bin(counters,r);
}
printResult(counters);
cout<<"Triangular distribution:"<<endl;
int counters1[10] = {0};
for(int i = 0; i < N; i++){
double r1 = (double)(rand()%100)/100.0;
double r2 = (double)(rand()%100)/100.0;
double r = (r1 + r2) * 0.5;
bin(counters1,r);
}
printResult(counters1);
return 0;
}