C programming define each function and must be preceded by a

C++ programming: define each function and must be preceded by a comment block that includes:

1) One line per parameter indicating if it is an input (passed by value) or IO (passed by reference) parameter, the type of the parameter and a very brief description of the parameter.

2) One line indicating the return type and describing it, for void functions indicate the function returns nothing.

3) A very brief description of the function\'s purpose.

4) This comment block should contain the information needed to use the function.

Write a program that draws the shape of the user’s choice using the symbol of the user’s choice. Your program should have and use the following functions:

int displayMenu ();

int getDimension (string,string);

void drawLine (int blanks,int numPen,char pen);

void drawRectangle (int,char);

void drawRectangle (int,int,char);

void drawDiamond (int,char);

void drawEqualTriangle (int,char);

void drawInvertTriangle (int,char);

char getNewPen ();

The function drawDiamond should call the functions drawEqualTriangle and drawInvertedTriangle. There is a simple trick to make this work properly. Look closely at the test run of drawInvertedTriangle to determine the trick.

Sample Runs:

1. Rectangle

2. Square

3. Draw Equilateral Triangle

4. Draw Inverted Triangle

5. Diamond

9. Pick new draw symbol

0. Quit

1

Height of the rectangle: 5

Width of the rectangle: 7

* * * * * * *

* * * * * * *

* * * * * * *

* * * * * * *

* * * * * * *

1. Rectangle

2. Square

3. Draw Equilateral Triangle

4. Draw Inverted Triangle

5. Diamond

9. Pick new draw symbol

0. Quit

2

Width of the square: 6

* * * * * *

* * * * * *

* * * * * *

* * * * * *

* * * * * *

* * * * * *

1. Rectangle

2. Square

3. Draw Equilateral Triangle

4. Draw Inverted Triangle

5. Diamond

9. Pick new draw symbol

0. Quit

9

Which symbol would you like to use? @

1. Rectangle

2. Square

3. Draw Equilateral Triangle

4. Draw Inverted Triangle

5. Diamond

9. Pick new draw symbol

0. Quit

3

Base of the equilateral triangle: 5

@

@ @

@ @ @

@ @ @ @

@ @ @ @ @

1. Rectangle

2. Square

3. Draw Equilateral Triangle

4. Draw Inverted Triangle

5. Diamond

9. Pick new draw symbol

0. Quit

4

Base of the inverted triangle: 4

@ @ @ @

@ @ @

@ @

@

1. Rectangle

2. Square

3. Draw Equilateral Triangle

4. Draw Inverted Triangle

5. Diamond

9. Pick new draw symbol

0. Quit

5

Width of the diamond: 7

@

@ @

@ @ @

@ @ @ @

@ @ @ @ @

@ @ @ @ @ @

@ @ @ @ @ @ @

@ @ @ @ @ @

@ @ @ @ @

@ @ @ @

@ @ @

@ @

@

1. Rectangle

2. Square

3. Draw Equilateral Triangle

4. Draw Inverted Triangle

5. Diamond

9. Pick new draw symbol

0. Quit

6

Invalid menu choice

1. Rectangle

2. Square

3. Draw Equilateral Triangle

4. Draw Inverted Triangle

5. Diamond

9. Pick new draw symbol

0. Quit

0

Logging you out

Here\'s a better look for the two triangles and diamond:

Solution

#include <iostream>
using namespace std;
void drawRectangle(int,char);
void drawEquiTriangle(int,char);
void drawInvertTriangle(int,char);
void drawLine (int,int,char);
void drawDiamond (int,char);
void drawTriangle(char);
void drawRectangle(int,int,char);
void displayMenu();
int main() {
   char s;
   int c,h,w;
   cout << \"Which symbol would you like to use? \";
   cin >> s;
   int flag = 1;
   while(flag){
       displayMenu();
       cin >> c;
       switch(c){
           case 1:
               cout << \"Height:\";
               cin >> h;
               cout << \"Width:\";
               cin >> w;
               drawRectangle(h,w,s);
               break;
           case 2:
               cout << \"Side:\";
               cin >> h;
               drawRectangle(h,s);
               break;
           case 3:
               cout << \"Base:\";
               cin >> h;
               drawEquiTriangle(h,s);
               break;
           case 4:
               cout << \"Base:\";
               cin >> h;
               drawInvertTriangle(h,s);
               break;
           case 5:
               cout << \"Width:\";
               cin>>w;
               drawDiamond(w,s);
               break;
           case 9:
               cout << \"Enter Symbol:\";
               cin >> s;
               break;
           case 0:
               flag = 0;
              
       }
   }
   return 0;
}

void displayMenu(){
   cout << \"1. Rectangle\ 2. Square\ 3. Draw Equilateral Triangle\ 4. Draw Inverted Triangle\ 5. Diamond\ 9. Pick new draw symbol\ 0. Quit\"<<endl;
}

// prints a rectangle using sym character.
void drawRectangle(int n,char sym){
   int i,j;
   for(i=0;i<n;i++){
       for(j=0;j<n;j++){
       cout << sym << \" \";
           }
   cout<< endl;
   }
}
void drawRectangle(int h,int w,char sym){
   int i,j;
   for(i=0;i<h;i++){
       for(j=0;j<w;j++){
       cout << sym << \" \";
           }
   cout<< endl;
   }
}

void drawLine (int blanks,int numPen,char pen){
   int i;
   for(i=0;i<numPen;i++){
       cout << pen << \" \";
   }
   cout << endl;
}

void drawEquiTriangle(int rows, char s){
   int i, j;
for(i=1; i<=rows; ++i)
{
for(j=1; j<=i; ++j)
{
cout << s << \" \";
}
cout << endl;
}
}

void drawInvertTriangle(int rows,char s){
   int i, j;
for(i=rows; i>=1; --i)
{
for(j=1; j<=i; ++j)
{
cout << s << \" \";
}
cout << endl;
}
}

void drawDiamond(int rows,char s){
   drawEquiTriangle(rows-1,s);
   drawLine(1,rows,s);
   drawInvertTriangle(rows-1,s);
}

/* sample output

*/

C++ programming: define each function and must be preceded by a comment block that includes: 1) One line per parameter indicating if it is an input (passed by v
C++ programming: define each function and must be preceded by a comment block that includes: 1) One line per parameter indicating if it is an input (passed by v
C++ programming: define each function and must be preceded by a comment block that includes: 1) One line per parameter indicating if it is an input (passed by v
C++ programming: define each function and must be preceded by a comment block that includes: 1) One line per parameter indicating if it is an input (passed by v
C++ programming: define each function and must be preceded by a comment block that includes: 1) One line per parameter indicating if it is an input (passed by v
C++ programming: define each function and must be preceded by a comment block that includes: 1) One line per parameter indicating if it is an input (passed by v

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site