#nov 23 solution with functions #functions: #1. random_list - has 3 parameters, size, min and max. Generates list of integers #between min and max and returns the list #2. final_price - has 2 parameters, original_price, discount - function returns final #price after discount is taken #3. process - has one parameter, list of original prices. Function generates new list with #discounted prices, counts number of items with 20% discount and number of items with 50% #discount. Function returns: discounted_prices (list), count_20, count_50 #Averages will be calculated in the main import random def random_list(size, min, max): prices=[] for i in range(size): prices.append(random.randint(min,max)) return prices def final_price(original_price, discount): return original_price-original_price*discount/100 def process(prices): num_items=len(prices) discount=[] count_20=0 count_50=0 for i in range(num_items): if(prices[i]<=50): d=20 count_20+=1 else: d=50 count_50+=1 final=final_price(prices[i],d) discount.append(final) return discount, count_20, count_50 def main(): num_items=random.randint(5,7) prices=random_list(num_items, 25, 75) print("original prices") print(prices) discount, count_20, count_50=process(prices) print("discounted list") print(discount) print("count_20", count_20) print("count_50", count_50) print("average original price", sum(prices)/num_items) print("average discount price", sum(discount)/num_items) main()