# Calcoli svolti seguendo questo esempio
# italiani per eta' nel 1871
pop1 <- c(3097,2917,5106,8005,5337,2340)
interv1 <- c(0,   5,  10,  20,  40,  60,100)  # un dato in piu' di pop
datiN <- function(pop,interv) {
  totale <- sum(pop); fr_perc <- pop/totale*100
  rap <- 1e5/sum(pop); freq <- pop*rap; num_int <- length(freq)
  dati <- c(seq(interv[1],interv[2],by=(interv[2]-interv[1])/freq[1]))
  for (i in 2:num_int) {dati <- c(dati,seq(interv[i],interv[i+1],by=(interv[i+1]-interv[i])/freq[i]))};
  dati}
dati1 <- datiN(pop1,interv1)
# italiani per eta' nel 1921
pop2 <- c(3549,4051,7930,11023,7273,3948)
dati2 <- datiN(pop2,interv1)
# italiani per eta' nel 1936
pop3 <- c(4362,4367,7549,13538,8466,4709)
dati3 <- datiN(pop3,interv1)
# italiani per fasce di eta' nel 1951
pop4 <- c(4332,3873,8256,14376,10904,5774)
dati4 <- datiN(pop4,interv1)
# italiani per eta' nel 1971
pop5 <- c(4428,4618,8031,15109,12939,9012)
dati5 <- datiN(pop5,interv1)
dev.new(2.5,2.5); hist(dati1,interv1,right=FALSE)
dev.new(2.5,2.5); hist(dati2,interv1,right=FALSE)
dev.new(2.5,2.5); hist(dati3,interv1,right=FALSE)
dev.new(2.5,2.5); hist(dati4,interv1,right=FALSE)
dev.new(2.5,2.5); hist(dati5,interv1,right=FALSE)

summary(dati1); summary(dati2); summary(dati3); summary(dati4); summary(dati5)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
   0.00   11.34   25.70   29.86   43.66  100.00 
   0.00   12.32   26.09   30.93   44.89  100.00 
   0.00   12.67   27.71   31.71   45.73  100.00 
   0.00   14.45   30.15   33.72   48.80  100.00 
   0.00   15.59   33.23   36.71   53.01  100.00