Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/adrianhenry15/cs50-mario-more

HarvardX CS50's Introduction To Computer Science
https://github.com/adrianhenry15/cs50-mario-more

Last synced: about 6 hours ago
JSON representation

HarvardX CS50's Introduction To Computer Science

Awesome Lists containing this project

README

        

# HarvardX CS50's Introduction To Computer Science

## Week 1 Problem Set: Mario

### World 1-1

Toward the beginning of World 1-1 in Nintendo’s Super Mario Brothers, Mario must hop over adjacent pyramids of blocks, per the below.

Let’s recreate those pyramids in C, albeit in text, using hashes (#) for bricks, a la the below. Each hash is a bit taller than it is wide, so the pyramids themselves will also be taller than they are wide.

```
# #
## ##
### ###
#### ####
```

The program we’ll write will be called mario. And let’s allow the user to decide just how tall the pyramids should be by first prompting them for a positive integer between, say, 1 and 8, inclusive.

Here’s how the program might work if the user inputs 8 when prompted:

```
$ ./mario
Height: 8
# #
## ##
### ###
#### ####
##### #####
###### ######
####### #######
######## ########
```

Here’s how the program might work if the user inputs 4 when prompted:

```
$ ./mario
Height: 4
# #
## ##
### ###
#### ####
```

Here’s how the program might work if the user inputs 2 when prompted:

```
$ ./mario
Height: 2
# #
## ##
```

And here’s how the program might work if the user inputs 1 when prompted:

```
$ ./mario
Height: 1
# #
```

If the user doesn’t, in fact, input a positive integer between 1 and 8, inclusive, when prompted, the program should re-prompt the user until they cooperate:

```
$ ./mario
Height: -1
Height: 0
Height: 42
Height: 50
Height: 4
# #
## ##
### ###
#### ####
```

Notice that width of the “gap” between adjacent pyramids is equal to the width of two hashes, irrespective of the pyramids’ heights.

### Getting Started

1. Make sure you have a compiler for C programs. Some popular compilers include GCC, Clang, and Microsoft Visual C++.
2. Clone the repo.
3. `cd` into the respective directory.
4. Compile the code `gcc -o mario-more mario-more.c`.
5. Start the program `./mario-more`