Difference between revisions of "Team B - OOP344 20133"

From CDOT Wiki
Jump to: navigation, search
(Coding Style and Standards)
(Master Branch Status)
 
(62 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{OOP344 Index | 20133}}
 
{{OOP344 Index | 20133}}
= Team Name =
+
== ==
: <span style="font-style:italic;font-size:20px;font-weight:900;color: #990000;text-shadow: 2px 1px 0px #111, 3px 2px 0px #777;">BDOT</span><br/>
+
{| class="wikitable sortable" border="3" cellpadding="5" style="text-align:center; border-color: black; background-color: #AAAADD; margin:20px; border-collapse:collapse;"
== Project Marking Percentage ==
+
|+
<big>
+
<h1 style="font-weight:900;margin-top:20px;"><span style="font-style:italic;font-size:20px;font-weight:900;color: #990000;text-shadow: 2px 1px 0px #111, 3px 2px 0px#777;"><FONT COLOR="#FF0000">T</FONT><FONT COLOR="#FF8000">e</FONT><FONT COLOR="#FFff00">a</FONT><FONT COLOR="#7Fff00">m</FONT><FONT COLOR="#00ff00"> </FONT><FONT COLOR="#00ff80">B</FONT><FONT COLOR="#00ffff">:</FONT><FONT COLOR="#0080ff"> </FONT><FONT COLOR="#0000ff">B</FONT><FONT COLOR="#7F00ff">D</FONT><FONT COLOR="#FF00ff">O</FONT><FONT COLOR="#FF0080">T</FONT></span></h1>
Group work:       40% 
+
 
Individual work:  60% +
+
<!--<h2>Team B: "BDOT"</h2>-->
-------------------------
+
! First Name !! Last Name !! Section !! Seneca Id !! wiki id !! IRC nick !! Blog URL
Total            100%
+
|-
</big>
+
 
 +
|[[User:Arlene Lee | Arlene ]]|| Lee || C || [mailto:alee110@myseneca.ca?subject=oop344 alee110] || [[Special:Contributions/Arlene Lee| Arlene Lee]] || Zephyr135 || [http://zephyrcpp.blogspot.ca KakuKaku]
 +
|-
 +
 
 +
 
 +
|[[User:Adam Sharpe | Adam ]]|| Sharpe || B || [mailto:ansharpe@myseneca.ca?subject=oop344 ansharpe] || [[Special:Contributions/Adam Sharpe | Adam Nicholas Sharpe]] || AdamSharpe || [http://adamsharpe8.blogspot.ca/ Object Oriented Programming Stuff]
 +
|-
 +
 
 +
<!-- :P -->
 +
|[[User:Raguraam Sivanandha | Ragu ]]|| Sivanandha || B || [mailto:rsivanandha@myseneca.ca?subject=oop344 rsivanandha] ||[[Special:Contributions/Raguraam Sivanandha| Raguraam Sivanandha ]] || Ragu || [http://ragu-oop344.blogspot.ca/ Ragu's Blog]
 +
|-
 +
 
 +
 
 +
|[[User:Benson Wong| Benson ]]|| Wong || B || [mailto:bwong53@myseneca.ca?subject=oop344 bwong53] || [[Special:Contributions/Benson Wong | Benson Wong]] || wongbsn || [http://wongbsn.blogspot.ca Benson's Blog]
 +
|-
 +
 
 +
|}
  
 
== Repository ==
 
== Repository ==
 
<span style="font:16px italic;text-decoration:underline;">BDOT Repository Path:  [https://github.com/Seneca-OOP344/Team-B Team B]</span>  
 
<span style="font:16px italic;text-decoration:underline;">BDOT Repository Path:  [https://github.com/Seneca-OOP344/Team-B Team B]</span>  
 
=== Master Branch Status ===
 
=== Master Branch Status ===
<span style="color:green;font-weight:900;">FREE</span>
+
<big>
 +
  <span style="font-size: 20px;color:green;font-weight:900;">HEEHAW!!! HEEHAW!!! HEEHAW!!! HEEHAW!!! HEEHAW!!! HEEHAW!!! </span>
 +
</big>
 +
 
 +
== Tasks ==
 +
===[http://zenit.senecac.on.ca/wiki/index.php/The_Application_-_OOP344_20133 The Application]===
 +
<i>Mandatory</i>
 +
# <u>'''Browse Record'''</u>
 +
#* Members: Whole Team
 +
#* Task: Code browse record functionality
 +
#* To be completed by: Saturday, 12:00, 2013/12/14
 +
#* Status: <span style="color:green;font-weight:900">Done</span><br/><br/>
 +
# <u>'''Edit Record'''</u>
 +
#* Members: Whole Team
 +
#* Task: Code edit record functionality
 +
#* To be completed by: Saturday, 12:00, 2013/12/14
 +
#* Status: <span style="color:green;font-weight:900">Done</span><br/><br/>
 +
# <u>'''Add Record'''</u>
 +
#* Members: Benson and Adam
 +
#* Task: Code add record functionality
 +
#* To be completed by: Saturday, 12:00, 2013/12/14
 +
#* Status: <span style="color:green;font-weight:900">Done</span><br/><br/>
 +
 
 +
===[http://zenit.senecac.on.ca/wiki/index.php/CIO_20133_Release_0.4_-_OOP344 Release 0.4]===
 +
# <u>'''Prototyping'''</u>
 +
#* Member: Benson Wong
 +
#* Task: Create prototypes and empty definitions for all classes
 +
#* To be completed by: November 14, 23:59
 +
#* Status: <span style="color:green;font-weight:900">Complete</span><br/><br/>
 +
# <u>'''CButton'''</u>
 +
#* Member: Arlene Lee
 +
#* Task: Code cbutton.h and cbutton.cpp
 +
#* To be completed by: November 21, 23:59
 +
#* Status: <span style="color:green;font-weight:900">Complete</span><br/><br/>
 +
# <u>'''CValEdit'''</u>
 +
#* Member: Adam Sharpe
 +
#* Task: Code cvaledit.h and cvaledit.cpp
 +
#* To be completed by: November 21, 23:59
 +
#* Status: <span style="color:green;font-weight:900">Complete</span><br/><br/>
 +
# <u>'''CCheckMark'''</u>
 +
#* Member: Benson Wong
 +
#* Task: Code ccheckmark.h and ccheckmark.cpp
 +
#* To be completed by: November 21, 23:59
 +
#* Status: <span style="color:green;font-weight:900">Complete</span><br/><br/>
 +
# <u>'''CMenuItem'''</u>
 +
#* Member: Ragu Sivanandha
 +
#* Task: Code cmenuitem.h and cmenuitem.cpp
 +
#* To be completed by: November 21, 23:59
 +
#* Status: <span style="color:green;font-weight:900">Complete</span><br/><br/>
 +
 
 +
===[http://zenit.senecac.on.ca/wiki/index.php/CIO_20133_Release_0.3_-_OOP344 Release 0.3] is due Nov 4th, 23:59===
 +
# <u>'''Prototyping - 16%'''</u>
 +
#* Member: Adam Sharpe
 +
#* Task: Create prototypes and empty definitions for all classes
 +
#* To be completed by: October 19, 23:59
 +
#* Status: <span style="color:green;font-weight:900">Complete</span><br/><br/>
 +
# <u>'''CLabel - 17%'''</u>
 +
#* Member: Ragu Sivanandha 
 +
#* Task: Code clabel.h and clabel.cpp
 +
#* To be completed by: October 22, 23:59           
 +
#* Status: <span style="color:green;font-weight:900">Complete</span><br/><br/>
 +
# <u>'''CDialog - 50%'''</u>
 +
#* Member: Arlene Lee and Adam Sharpe
 +
#* Task: Code cdialog.h and cdialog.cpp
 +
#* To be completed by: October 31, 23:59
 +
#* Status: <span style="color:green;font-weight:900">Complete</span><br/><br/>
 +
# <u>'''CLineEdit - 17%'''</u>
 +
#* Member: Benson Wong
 +
#* Task: Code clineedit.h and clineedit.cpp
 +
#* To be completed by: October 29, 23:59
 +
#* Status: <span style="color:green;font-weight:900">Complete</span><br/><br/>
 +
# <u>'''Optimization and Testing'''</u>
 +
#* Member: Adam, Arlene, Ragu, Benson
 +
#* Details: Improving code efficiency, implement short circuit evaluation (for Fardad), and testing for bugs<br/><br/>
 +
 
 +
===[http://zenit.senecac.on.ca/wiki/index.php/CIO_20133_Release_0.2_-_OOP344    Release 0.2] is due October 20th, 23:59===
 +
 
 +
# Organize and complete team page -  <span style="color:green;font-weight:900">Complete</span>
 +
# Select a team member's console.cpp and console.h to use - <span style="color:green;font-weight:900">Complete</span>
 +
#* That team member should branch and clone repository and add the files to it as well as comment on cframe.h with github id, date, and time and merge it back
 +
# All other members clone the repository, comment, and test the execution of CFrame - <span style="color:green;font-weight:900">Complete</span>
 +
#* The comment should include your github id, date, and time in the cframe.h file
 +
#* Push the final changes to github
 +
 
 +
== Meetings ==
 +
====December 14, 2013 - Skype====
 +
* Last and final meeting online over Skype, finished all mandatory tasks, although final task will be to attempt to finish the optional features by deadline. The team's application has been checked on multiple platforms and is running error free so far. Will continue to beautify code as best we can as well.
 +
 
 +
====December 13, 2013 - Skype====
 +
* Completing mandatory tasks for the application, will move on to the optional features such as search and delete, but only after we have accomplished our primary tasks, i.e. add a record, browse, and edit
 +
 
 +
====December 6, 2013 - Skype====
 +
* Experienced some issues with file masks, and discussed ways to improve code for overall readability and attempts would be made to improve efficiency
 +
 
 +
====December 4, 2013 - Skype====
 +
* Discussed which areas of functionality to focus on, attempting to plan out majority of work before exam week
 +
 
 +
====December 3, 2013 - Skype====
 +
* Discussed overall outline of the application, as well as coding some of the mandatory functions. Also discussed about the use of vectors for book database
 +
 
 +
====December 1, 2013 - Skype====
 +
* Discussion about the final application and how we should approach it
 +
 
 +
====November 13, 2013 - Media Pod 4====
 +
* Went over release 0.4 as a team over Skype and in the study room, will decide specific member roles and deadlines to finish each task on Monday, November 18, 2013
 +
 
 +
====October 29, 2013 - Media Pod 4====
 +
* Finished up release 0.3
 +
 
 +
====October 25, 2013 - Skype====
 +
* Discussion on coding issues and fixes for release 0.3
 +
 
 +
====October 24, 2013 - Skype====
 +
* Discussion on coding for release 0.3
 +
 
 +
====October 20, 2013 - Skype====
 +
* Deciding on member roles and organizing time associated with the completion of each task for release 0.3
 +
 
 +
====October 16, 2013 - Rm S3011====
 +
* Completing team page, finalizing coding standards, and deciding on whose console.cpp/console.h we are using (Arlene's)
 +
 
 +
====October 15, 2013 - Rm S3012====
 +
* Meet, greet, and discussion on coding standards
 +
 
 +
== Tips & Important Notes==
 +
<b>Here is a list of important notes listed within the project page</b>
 +
* Add recompilation safeguards to all your header files.
 +
* Always use forward declaration if possible instead of including a class header-file.
 +
* Use includes only in files in which the actual header file code is used, i.e. if strlen function is used only in cpp file then only include "bconsole.h" in this file.
 +
* '''Avoid "just in case" includes.'''
 +
* Each class MUST have its own header file and cpp file for implementation.
 +
* Use the class name for the name of the file but make sure it is all '''''lowercase'''''.
 +
*: For example '''CFrame''' class should have '''cframe.h''' and '''cframe.cpp''' files for its implementation.
 +
* Avoid placing using directives and declarations in header files, as this might lead to namespace conflicts since we    do not know in which order a header file will be included within any other file (source: Chris Szalwinski, BTP300 readings on namespace design considerations)
 +
 
 +
== Project Marking Percentage ==
 +
<big>
 +
  Group work:      40%
 +
  Individual work: 60% +
 +
  -----------------------
 +
  Total:          100%
 +
</big>
  
 
== Coding Style and Standards ==
 
== Coding Style and Standards ==
Line 22: Line 179:
  
  
class example {   // There will be a space after every class identifier for the definition
+
class example { // There will be a space after every class identifier for the definition
 
   public:
 
   public:
    int _data;     // Member variables should start with an underscore
+
  int _data; // Member variables should start with an underscore
    int _arraySize // Use meaningful names for variables when applicable and use lower Camel Case
+
  int _arraySize // Use meaningful names for variables when applicable and use lower Camel Case
    int _width;   // Every object have its own type
+
  int _width; // Every object have its own type
    char* _pArray; // Pointers should have * part of the type
+
  char* _pArray; // Pointers should have * part of the type
    void display():
+
  void display():
 
};
 
};
  
void example::display() { // There will be a space after every function identifier for the definition  
+
void example::display() { // There will be a space after every function identifier for the definition  
 
}
 
}
  
Line 43: Line 200:
  
 
int main() {
 
int main() {
   int a = 0;             // Indentation is 2 spaces
+
   int a = 0; // Indentation is 2 spaces
   int b = 1;             // NO Tab characters allowed! Replace every tab character with 2 spaces.
+
   int b = 1; // NO Tab characters allowed! Replace every tab character with 2 spaces.
 
   char name[] = "Spoom";
 
   char name[] = "Spoom";
                          // Put a newline after variable declaration
+
  // Put a newline after variable declaration
 
   if(a > b ? a : b) {
 
   if(a > b ? a : b) {
    a = a * b;           // Put a space between EVERY variable and operator
+
  a = a * b; // Put a space between EVERY variable and operator
 
   }
 
   }
                          // Put a newline after a control structure
+
  // Put a newline after a control structure
 
   if(!strcmp(name, "Spoom")) {
 
   if(!strcmp(name, "Spoom")) {
    cout << "Welcome, Spoom!" << endl; // Every statement within a control structure will
+
  cout << "Welcome, Spoom!" << endl; // Every statement within a control structure will
   }                                   // be wrapped in braces, even if there is only 1 line
+
   } // be wrapped in braces, even if there is only 1 line
   else {
+
   else { // Else statement will be on a newline after the If control structure
    cout << "Get out." << endl;
+
  cout << "Get out." << endl;
 
   }
 
   }
  
Line 61: Line 218:
 
}
 
}
 
</syntaxhighlight></big>
 
</syntaxhighlight></big>
 
== Team Members ==
 
{| class="wikitable sortable" border="3" cellpadding="5" style="text-align:center; border-color: black; background-color: #AAAADD; margin:20px; border-collapse:collapse;"
 
|+
 
<h2><FONT COLOR="#FF0000">T</FONT><FONT COLOR="#FF8000">e</FONT><FONT COLOR="#FFff00">a</FONT><FONT COLOR="#7Fff00">m</FONT><FONT COLOR="#00ff00"> </FONT><FONT COLOR="#00ff80">B</FONT><FONT COLOR="#00ffff">:</FONT><FONT COLOR="#0080ff"> </FONT><FONT COLOR="#0000ff">B</FONT><FONT COLOR="#7F00ff">D</FONT><FONT COLOR="#FF00ff">O</FONT><FONT COLOR="#FF0080">T</FONT></h2>
 
<!--<h2>Team B: "BDOT"</h2>-->
 
! First Name !! Last Name !! Section !! Seneca Id !! wiki id !! IRC nick !! Blog URL
 
|-
 
 
|[[User:Arlene Lee | Arlene ]]|| Lee || C || [mailto:alee110@myseneca.ca?subject=oop344 alee110] || [[Special:Contributions/Arlene Lee | Arlene Lee]] || Zephyr135 || [http://zephyrcpp.blogspot.ca KakuKaku]
 
|-
 
 
 
|[[User:Adam Sharpe | Adam ]]|| Sharpe || B || [mailto:ansharpe@myseneca.ca?subject=oop344 ansharpe] || [[Special:Contributions/Adam Sharpe | Adam Nicholas Sharpe]] || AdamSharpe || [http://adamsharpe8.blogspot.ca/ Object Oriented Programming Stuff]
 
|-
 
 
 
|[[User:Raguraam Sivanandha | Ragu ]]|| Sivanandha || B || [mailto:rsivanandha@myseneca.ca?subject=oop344 rsivanandha] || [[Special:Contributions/Raguraam Sivanandha| Raguraam Sivanandha ]] || Ragu || [http://ragu-oop344.blogspot.ca/ Ragu's Blog]
 
|-
 
 
 
|[[User:Benson Wong| Benson ]]|| Wong || B || [mailto:bwong53@myseneca.ca?subject=oop344 bwong53] || [[Special:Contributions/Benson Wong | Benson Wong]] || wongbsn || [http://wongbsn.blogspot.ca Benson's Blog]
 
|-
 
 
|}
 
 
== Tasks ==
 
===Release 0.2 is due October 20th, 23:59===
 
 
# Organize and complete team page -  <span style="color:green;font-weight:900">Complete</span>
 
# Select a team member's console.cpp and console.h to use - <span style="color:green;font-weight:900">Complete</span>
 
#* That team member should branch and clone repository and add the files to it as well as comment on cframe.h with github id, date, and time and merge it back
 
# All other members clone the repository, comment, and test the execution of CFrame - <span style="color:red;font-weight:900">Incomplete</span>
 
#* The comment should include your github id, date, and time in the cframe.h file
 
#* Push the final changes to github
 
 
== Meetings ==
 
====October 16, 2013 - Rm S3011====
 
* Completing team page, finalizing coding standards, and deciding on whose console.cpp/console.h we are using (Arlene's).
 
 
====October 15, 2013 - Rm S3012====
 
* Meet, greet, and discussion on coding standards
 
 
== Other ==
 
[[Irc logs of meeting (unique name) - oop344 20113 | date]]
 

Latest revision as of 14:15, 14 December 2013


OOP344 | Weekly Schedule | Student List | Teams | Project | Student Resources

Team B: BDOT

First Name Last Name Section Seneca Id wiki id IRC nick Blog URL
Arlene Lee C alee110 Arlene Lee Zephyr135 KakuKaku
Adam Sharpe B ansharpe Adam Nicholas Sharpe AdamSharpe Object Oriented Programming Stuff
Ragu Sivanandha B rsivanandha Raguraam Sivanandha Ragu Ragu's Blog
Benson Wong B bwong53 Benson Wong wongbsn Benson's Blog

Repository

BDOT Repository Path: Team B

Master Branch Status

 HEEHAW!!! HEEHAW!!! HEEHAW!!! HEEHAW!!! HEEHAW!!! HEEHAW!!! 

Tasks

The Application

Mandatory

  1. Browse Record
    • Members: Whole Team
    • Task: Code browse record functionality
    • To be completed by: Saturday, 12:00, 2013/12/14
    • Status: Done

  2. Edit Record
    • Members: Whole Team
    • Task: Code edit record functionality
    • To be completed by: Saturday, 12:00, 2013/12/14
    • Status: Done

  3. Add Record
    • Members: Benson and Adam
    • Task: Code add record functionality
    • To be completed by: Saturday, 12:00, 2013/12/14
    • Status: Done

Release 0.4

  1. Prototyping
    • Member: Benson Wong
    • Task: Create prototypes and empty definitions for all classes
    • To be completed by: November 14, 23:59
    • Status: Complete

  2. CButton
    • Member: Arlene Lee
    • Task: Code cbutton.h and cbutton.cpp
    • To be completed by: November 21, 23:59
    • Status: Complete

  3. CValEdit
    • Member: Adam Sharpe
    • Task: Code cvaledit.h and cvaledit.cpp
    • To be completed by: November 21, 23:59
    • Status: Complete

  4. CCheckMark
    • Member: Benson Wong
    • Task: Code ccheckmark.h and ccheckmark.cpp
    • To be completed by: November 21, 23:59
    • Status: Complete

  5. CMenuItem
    • Member: Ragu Sivanandha
    • Task: Code cmenuitem.h and cmenuitem.cpp
    • To be completed by: November 21, 23:59
    • Status: Complete

Release 0.3 is due Nov 4th, 23:59

  1. Prototyping - 16%
    • Member: Adam Sharpe
    • Task: Create prototypes and empty definitions for all classes
    • To be completed by: October 19, 23:59
    • Status: Complete

  2. CLabel - 17%
    • Member: Ragu Sivanandha
    • Task: Code clabel.h and clabel.cpp
    • To be completed by: October 22, 23:59
    • Status: Complete

  3. CDialog - 50%
    • Member: Arlene Lee and Adam Sharpe
    • Task: Code cdialog.h and cdialog.cpp
    • To be completed by: October 31, 23:59
    • Status: Complete

  4. CLineEdit - 17%
    • Member: Benson Wong
    • Task: Code clineedit.h and clineedit.cpp
    • To be completed by: October 29, 23:59
    • Status: Complete

  5. Optimization and Testing
    • Member: Adam, Arlene, Ragu, Benson
    • Details: Improving code efficiency, implement short circuit evaluation (for Fardad), and testing for bugs

Release 0.2 is due October 20th, 23:59

  1. Organize and complete team page - Complete
  2. Select a team member's console.cpp and console.h to use - Complete
    • That team member should branch and clone repository and add the files to it as well as comment on cframe.h with github id, date, and time and merge it back
  3. All other members clone the repository, comment, and test the execution of CFrame - Complete
    • The comment should include your github id, date, and time in the cframe.h file
    • Push the final changes to github

Meetings

December 14, 2013 - Skype

  • Last and final meeting online over Skype, finished all mandatory tasks, although final task will be to attempt to finish the optional features by deadline. The team's application has been checked on multiple platforms and is running error free so far. Will continue to beautify code as best we can as well.

December 13, 2013 - Skype

  • Completing mandatory tasks for the application, will move on to the optional features such as search and delete, but only after we have accomplished our primary tasks, i.e. add a record, browse, and edit

December 6, 2013 - Skype

  • Experienced some issues with file masks, and discussed ways to improve code for overall readability and attempts would be made to improve efficiency

December 4, 2013 - Skype

  • Discussed which areas of functionality to focus on, attempting to plan out majority of work before exam week

December 3, 2013 - Skype

  • Discussed overall outline of the application, as well as coding some of the mandatory functions. Also discussed about the use of vectors for book database

December 1, 2013 - Skype

  • Discussion about the final application and how we should approach it

November 13, 2013 - Media Pod 4

  • Went over release 0.4 as a team over Skype and in the study room, will decide specific member roles and deadlines to finish each task on Monday, November 18, 2013

October 29, 2013 - Media Pod 4

  • Finished up release 0.3

October 25, 2013 - Skype

  • Discussion on coding issues and fixes for release 0.3

October 24, 2013 - Skype

  • Discussion on coding for release 0.3

October 20, 2013 - Skype

  • Deciding on member roles and organizing time associated with the completion of each task for release 0.3

October 16, 2013 - Rm S3011

  • Completing team page, finalizing coding standards, and deciding on whose console.cpp/console.h we are using (Arlene's)

October 15, 2013 - Rm S3012

  • Meet, greet, and discussion on coding standards

Tips & Important Notes

Here is a list of important notes listed within the project page

  • Add recompilation safeguards to all your header files.
  • Always use forward declaration if possible instead of including a class header-file.
  • Use includes only in files in which the actual header file code is used, i.e. if strlen function is used only in cpp file then only include "bconsole.h" in this file.
  • Avoid "just in case" includes.
  • Each class MUST have its own header file and cpp file for implementation.
  • Use the class name for the name of the file but make sure it is all lowercase.
    For example CFrame class should have cframe.h and cframe.cpp files for its implementation.
  • Avoid placing using directives and declarations in header files, as this might lead to namespace conflicts since we do not know in which order a header file will be included within any other file (source: Chris Szalwinski, BTP300 readings on namespace design considerations)

Project Marking Percentage

 Group work:      40%
 Individual work: 60% +
 -----------------------
 Total:          100%

Coding Style and Standards

  • The following will serve as an example of our coding standard:
#ifndef __BDOT_FILENAME_H__ // Our Team's Safeguard
#define __BDOT_FILENAME_H__


class example { // There will be a space after every class identifier for the definition
  public:
  int _data; // Member variables should start with an underscore
  int _arraySize // Use meaningful names for variables when applicable and use lower Camel Case
  int _width; // Every object have its own type
  char* _pArray; // Pointers should have * part of the type
  void display():
};

void example::display() { // There will be a space after every function identifier for the definition 
}

#endif

...

#include <iostream>
#include <cstring>
using namespace std;

int main() {
  int a = 0; // Indentation is 2 spaces
  int b = 1; // NO Tab characters allowed! Replace every tab character with 2 spaces.
  char name[] = "Spoom";
  // Put a newline after variable declaration
  if(a > b ? a : b) {
  a = a * b; // Put a space between EVERY variable and operator
  }
  // Put a newline after a control structure
  if(!strcmp(name, "Spoom")) {
  cout << "Welcome, Spoom!" << endl; // Every statement within a control structure will
  } // be wrapped in braces, even if there is only 1 line
  else { // Else statement will be on a newline after the If control structure
  cout << "Get out." << endl;
  }

  return 0;
}