DATA STRUCTURE - Guest String - Title //Guests title - Mr, Mrs, Miss etc String - Forename //First name of guest String - Surname //Surname of guest String – Address //First line of address i.e. the house number and road name String - Town // Boolean - Attending? //Yes/No choice of attending. Yes = boolean true Boolean - Meal/No Meal //Yes/No choice of a meal. Yes = Boolean true int - Dietary Requirements //Choice of dietary requirements. 1 - Vegetarian, 2 - Vegan, //3 - Kosher, 4 - Halal, 5 - No Lactose, 6 - No Gluten, //7 - No Nuts, 8 - Other Boolean - Alcoholic/Non Alcoholic drinks //Choice of alcoholic/non-alcoholic drinks. //Alcoholic = boolean true String - Email Address //Email address for fast sending DATA STRUCTURE - Hotel String - Name //Hotel name String - Address //Hotel Address String - Town //Town Hotel is in DATA STRUCTURE - Song String - Title //Song title String - Artist //Artist of song String – Track //Track on CD int - CD Number //DJ reference stating which CD the requested song is on FUNCTION - Create Invite INPUTS - Pointer to title, forename and surname of Guest structure, Pointer to name, address and town of Hotel structure OUTPUTS - String output in set format, Print COMMENTS - Creates and prints all the invites. Output format: "Dear" Title Forename Surname "You are invited to a 21st birthday party at:" Hotel.name, Hotel.address, Hotel.town FUNCTION - Meals Ordered INPUTS - Pointer to Meal/No Meal and dietary requirements, temporary integer total OUTPUTS - Integer stating total number of meals required and total of each type COMMENTS - Looks through the Meal/No Meal field of Guest, increments the number of the corresponding meals. Then looks through the dietary requirements field and increments the total for each type of requirement. Outputs : "Meals Ordered" + number "Vegetarian" + number "Vegan" + Number etc. FUNCTION - Drink counter INPUTS - Pointer to Alcoholic/Non Alcoholic drinks, temporary integer total OUTPUTS - String stating Alcoholic or Non-Alcoholic, Integer stating totals of each COMMENTS - Looks through the Alcoholic/Non Alcoholic drinks field of Guest, increments the number of the corresponding drinks. Outputs : "Alcoholic drinks" + number "Non- Alcoholic drinks" + number FUNCTION - Accept invite INPUTS - User input 'surname', pointer to surname, Attending?, Meal/No Meal, Dietary Requirements and Alcoholic/Non Alcoholic drinks OUTPUTS - Success flag COMMENTS - Searches through the surname field for Guest and outputs a list of all guests with that surname. The user then can check the "Accepted?" field to true on all the guests they are accepting for, whether they are having a meal and enter the dietary requirements. Displays message to confirm. FUNCTION - Song request INPUTS - Pointer title in Song data structure, User input OUTPUTS - Confirmation flag, Request List of songs COMMENTS - Takes the user input and compares it to the song title until it finds the matching song title. Adds the song, title and CD number to a request list that can later be printed for the DJ. FUNCTION - Create Reminder INPUTS - Pointer to title, forename, surname and email address of Guest structure OUTPUTS - String output in correct sending format, List of email addresses COMMENTS - Creates a reminder about the party with the guest's name. Outputs this with the corresponding email addresss to an email client to send. FUNCTION - Start up connection to internet INPUTS – User Input OUTPUTS – Confirmation flag COMMENTS - To check connection between the internet and the system.