simulate for 1 month

dailydemand <- c(10,15,20,25,30,35)
prob <- c(0.07 ,0.12, 0.26, 0.21 , 0.20, 0.14)
food= data.frame(dailydemand,prob)
food$ulc <- cumsum(food[,2])
food$llc <- food$ulc-food$prob
set.seed(888)
rand <- runif(30)
chicken = data.frame(rand)
chicken$num <- ifelse(chicken$rand < 0.07 , 10,
                      ifelse(chicken$rand <0.19 & chicken$rand >=0.07, 15, 
                             ifelse(chicken$rand <0.45 & chicken$rand >=0.19, 20, 
                                    ifelse(chicken$rand <0.66 & chicken$rand >=0.45, 25, 
                                           ifelse(chicken$rand <0.86 & chicken$rand >=0.66,30, 35)))))

chicken$left <- ifelse(25-chicken$num> 0, 25-chicken$num,0)

chicken$profit <- chicken$num*12-5.5*30+chicken$left*5
sum(chicken$profit)
## [1] 4255

simulate monthly profit 50 times

set.seed(8)
randm <- runif(1500)
chickenm = data.frame(randm)
chickenm$num <- ifelse(chickenm$randm < 0.07 , 10,
                       ifelse(chickenm$randm <0.19 & chicken$rand >=0.07, 15, 
                              ifelse(chickenm$randm <0.45 & chickenm$randm >=0.19, 20, 
                                     ifelse(chickenm$randm <0.66 & chickenm$randm >=0.45, 25, 
                                            ifelse(chickenm$randm <0.86 & chickenm$randm >=0.66,30,35)))))

chickenm$left <- ifelse(25-chickenm$num> 0, 25-chickenm$num,0)

chickenm$n <-as.numeric(row.names(chickenm))
chickenm$sort <- ceiling(chickenm$n/30)
chickenm$profit<- chickenm$num*12-5.5*30+chickenm$left*5

library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
chickenm2 <- group_by(chickenm, sort)

chickenm3 <- summarise(chickenm2,  count=n(),
                       tprofit= sum(profit))

mean(chickenm3$tprofit)
## [1] 4309.7