added initialize, user prompt and random number generator