Sei sulla pagina 1di 12

Tetris and Number ASCII ART

CSD Assignment #1

By
Muhammad Yusuf Fadhlan
105998409

International Electrical Engineering and Computer Science


Taipei Tech
Date Submitted: October 6, 2016

Specification
In this Assignment students are asked to display some ASCII art which
represent 19 kinds of Tetris block and also 10 kinds of digits.
The program has to display a menu to use the system. As well displaying a
sub menu for each option in the main menu.
For example:

Figure 1. A sample of main menu display.

Figure 2. Sub menu display examples.


For Tetris:
Students are instructed to make 19 kinds of Tetris ASCII Art. 4x4 matrix can
be used to show the Tetris.

Figure 3. Shape reference for Tetris ASCII Art.


For Digits:
7x7 matrix can be used to show the number.

Design
Pseudo Code:
Display the main menu;
Ask which option that user want to choose;
If Tetris
Show sub menu of Tetris;
Ask which shape of Tetris that will be displayed;
Show the shape;
Back to the main menu;
If Number
Show sub menu of Number;
Ask which digit that will be displayed;
Show the number (ASCII Art of number);
Back to the main menu;
If the user choose the wrong menu
Show the warning;
Back to the main menu;
End;

Implementation

#include <iostream>
using namespace std;
int main()
{
int choice;
do{
cout
<<"\n\n\n\n\n\n************************************************************
***************** \n";
cout <<"Please select one of the following options: \n";
cout <<
"1:
"2:
"3:
"4:

Tetris\n"
Number\n"
About & Help\n"
Quit\n\n";

cout
<<"************************************************************************
***** \n";
cout << "Enter your selection (1, 2,3 or 4): ";
cin >> choice;

//*************************************************************************
****
// Switch menu to display the menu.
//*************************************************************************
****
switch (choice)
{
case 1:
int tetris;
cout << "\n";
cout << "You have chosen Tetris \n"
"Chose 1~19\n"
"Chose -1 for back\n";
cout << "Please insert the number: ";
cin >> tetris;
switch (tetris)
{
case 1:
cout << "\n";
cout << "O O O
"- - "- - "- - -

O\n"
O\n"
-\n"
-\n\n";

break;
case 2:
cout << "\n";
cout << "- - "- - "- - "- - O
break;
case 3:
cout << "\n";
cout << "- - "- - "O - "O O O
break;
case 4:
cout << "\n";
cout << "O O "O - "O - "O - break;
case 5:
cout << "\n";
cout << "O O O
"- O "- - "- - break;

O\n"
O\n"
O\n"
O\n\n";

-\n"
-\n"
-\n"
O\n\n";

-\n"
-\n"
-\n"
-\n\n";

-\n"
-\n"
-\n"
-\n\n";

case 6:
cout << "\n";
cout << "- O "O O "- O "- - break;
case 7:
cout << "\n";
cout << "- - "- - "- O "O O O
break;
case 8:
cout << "\n";
cout << "- - "O - "O O "O - break;
case 9:
cout << "\n";
cout << "O O O
"O - "- - "- - break;
case 10:
cout << "\n";
cout << "- - O
"- - "- - "- - break;
case 11:
cout << "\n";
cout << "- - "- - "- - "O O O
break;
case 12:
cout << "\n";
cout << "O O "O - "O - "O - break;

-\n"
-\n"
-\n"
-\n\n";

-\n"
-\n"
-\n"
-\n\n";

-\n"
-\n"
-\n"
-\n\n";

O\n"
-\n"
-\n"
-\n\n";

O\n"
O\n"
O\n"
O\n\n";

-\n"
-\n"
O\n"
O\n\n";

-\n"
-\n"
-\n"
-\n\n";

case 13:
cout << "\n";
cout << "- - "- - "- O O
"O O break;
case 14:
cout << "\n";
cout << "- - "O - "O O "- O break;
case 15:
cout << "\n";
cout << "O - "O - "O - "O - break;
case 16:
cout << "\n";
cout << "- - "- - "- - "O O O
break;
case 17:
cout << "\n";
cout << "- - "- - "O O "O O break;
case 18:
cout << "\n";
cout << "- - "- - "O O "- O O
break;
case 19:
cout << "\n";
cout << "- - "- O "O O "O - break;

-\n"
-\n"
-\n"
-\n\n";

-\n"
-\n"
-\n"
-\n\n";

-\n"
-\n"
-\n"
-\n\n";

-\n"
-\n"
-\n"
O\n\n";

-\n"
-\n"
-\n"
-\n\n";

-\n"
-\n"
-\n"
-\n\n";

-\n"
-\n"
-\n"
-\n\n";

case -1:
cout << "\nGood Bye!\n\n";
break;

while(choice!=-1);
getchar();
getchar();
}
break;
case 2:
int ascinumber;
cout << "\n";
cout << "You have chosen Number \n"
"Chose 0~9\n"
"Chose -1 for back\n";
cout << "Please insert the number: ";
cin >> ascinumber;
switch (ascinumber)
{
case 1:
cout << "\n";
cout << "---OO--\n"
"--OOO--\n"
"-OOOO--\n"
"--OOO--\n"
"--OOO--\n"
"--OOO--\n"
"-OOOOO-\n\n";
break;
case 2:
cout << "\n";
cout << "--OOOO-\n"
"-OO--OO\n"
"-----OO\n"
"----OO-\n"
"---OO--\n"
"-OO----\n"
"OOOOOOO\n\n";
break;
case 3:
cout << "\n";
cout << "-OOOOOO\n"
"OO---OO\n"
"----OOO\n"
"--OOO--\n"
"----OOO\n"
"OO---OO\n"
"-OOOOOO\n\n";
break;
case 4:
cout << "\n";
cout << "----OOO\n"
"--OO-OO\n"
"-OO--OO\n"
"OOOOOOO\n"
"-----OO\n"
"-----OO\n"
"-----OO\n\n";

break;
case 5:
cout << "\n";
cout << "OOOOOOO\n"
"OOO----\n"
"OO-----\n"
"OOOOOOO\n"
"-----OO\n"
"----OOO\n"
"OOOOOO-\n\n";
break;
case 6:
cout << "\n";
cout << "-OOOOO\n"
"OO-----\n"
"OO-----\n"
"OOOOOOO\n"
"OO---OO\n"
"OO---OO\n"
"-OOOOO-\n\n";
break;
case 7:
cout << "\n";
cout << "OOOOOOO\n"
"OO---OO\n"
"----OOO\n"
"---OOO-\n"
"--OOO--\n"
"-OOO---\n"
"OOO----\n\n";
break;
case 8:
cout << "\n";
cout << "-OOOOO-\n"
"OO---OO\n"
"OO---OO\n"
"-OOOOO-\n"
"OO---OO\n"
"OO---OO\n"
"-OOOOO-\n\n";
break;
case 9:
cout << "\n";
cout << "-OOOOO-\n"
"OO---OO\n"
"OO---OO\n"
"-OOOOOO\n"
"-----OO\n"
"-----OO\n"
"-OOOOO-\n\n";
break;

case 0:
cout << "\n";
cout << "-OOOOO-\n"
"OO---OO\n"
"OO---OO\n"
"OO---OO\n"
"OO---OO\n"
"OO---OO\n"
"-OOOOO-\n\n";
break;
case -1:
cout << "\nGood Bye!\n\n";
break;
while(choice!=-1);
getchar();
getchar();
}
break;
case 3:
cout
cout
cout
cout

<<
<<
<<
<<

"\n";
"You have chosen help\n";
"There is a list for Tetris Menu:\n\n";
" 1. O O O O
2. - - - O
3. - - - -

4. O O - -

\n"
"

- - - O

- - - O

- - - -

O - - -

"

- - - -

- - - O

O - - -

O - - -

"

- - - -

- - O O

O O O O

O - - -

cout << " 5. O O O -

6. - - - -

7. - - - -

8. - - - -

\n"
\n"
\n\n";
\n"
"

- O - -

- O - -

- - - -

O - - -

"

- - - -

O O - -

- O - -

O O - -

"

- - - -

- O - -

O O O -

O - - -

cout << " 9. O O O O

10. - - O O

11. - - - -

12. O - - -

\n"
\n"
\n\n";
\n"
"

O - - -

- - - O

- - - -

O - - -

"

- - - -

- - - O

- - - O

O - - -

"

- - - -

- - - O

O O O O

O O - -

cout << "13. - - - -

14. - - - -

15. O - - -

16. - - - -

\n"
\n"
\n\n";
\n"
"

- - - -

O - - -

O - - -

- - - -

"

- O O -

O O - -

O - - -

- - - -

"

O O - -

- O - -

O - - -

O O O

\n"
\n"
O\n\n";

cout << "17. - - - -

18. - - - -

19. - - - -

\n"
"

- - - -

- - - -

- O - -

"

O O - -

O O - -

O O - -

"

O O - -

- O O -

O - - -

\n"
\n"
\n\n";
cout << "The program is created by Muhammad Yusuf Fadhlan\n"
"
105998409
\n"
"
2016
\n\n";
break;
case 4:
cout << "\n";
cout << "You have chosen Quit, Goodbye.\n\n";
break;
default:
cout<< "Your selection must be between 1 and 4!\n\n";
}
}while(choice!=4);
getchar();
getchar();
}

Testing

Figure 4. The main menu display

Figure 5. The Tetris Sub Menu display when user choose 1.

Figure 6. One of 19 shapes of Tetris.

Figure 7. The Number Sub Menu display if number 2 is submitted.

Figure 8. The output that is shown if user input 9.

Conclusion
o This homework uses a lot of ASCII art for the output.
o The Switch function is very essential for this homework.

Time Table
Homework 1
Date
20161001

Start
10:00

Stop
13:00

20161004

20:00

22:00

20161006
20161006
Total hours: 10

13:00
19:00

17:00
20:00

Comment
Make a structure of the program
such as main menu and its sub
menu.
Make a ASCII layout for Tetris
and Number Display
Finishing the code
Make a report

Potrebbero piacerti anche