Problem Description Write a program that simulates a vending machine. The vending machine sells three types of food: 1) Potato chips $1.25; 2) Cookies $0.85; 3) Candies $0.95. The program will prompt for the buyer to enter the amount in quarters (25 cents), dimes (10 cents), and nickels (5 cents). The machine does not take dollar or cents. The program will then present a selection menu for the foods. The buyer makes a selection. If the buyer selects a food that is sold out, the program will display a message and re-display the selection menu. If the buyer has put in enough money, the selected food will be dispensed, with a message "Please take a your (food)". If the amount is more than the cost, an appropriate amount of change (in quarter. dime or nickel) will be dispensed. Every food is initialized with a quantity. The quantity is reduced by one every time the food is dispensed. When the quantity of a food is 0, no more should be sold, with an error stating "Sold out. Please make another choice". Note: dollar - 4 quarters = 10 dimes - 20 nickels 1 dollar - 4 quarters I quarter - 2 dimes + 1 nickel - 5 nickles - 25 cents 1 dime - 2 nickels - 10 cents Requirements Please do all of the following: 1. Draw a flow chart depicting the algorithm. 2. Create a C++ source code file named Vending Machine.cpp. Make sure the file compile correctly 3. Test your program with the following test cases: 3.1. Buyer selects a food that is available, and inserts the exact amount as the price 3.2 Buyer selects a food that is in stock, and inserts less money than the price 3.3 Buyer selects a food that is in stock, and inserts more money than the price: 3.4 Buyer selects a food that is sold out 3.5 Buyer selects a food that does not exist the foods Canture the interactions and save in a file