- ๐ overview
- ๐ป Get Started
- โ๏ธ How project Work
- ๐งฑ Chosen Data Structure
- ๐ท Demo Screenshots
- ๐ฝ GIF Demo
- โจ Contributors
- ๐ License
- In the hope of getting to know more about Mars and the possibility of life on its surface, a huge number of exploratory missions to different regions of the planet need to be conducted.
- Imagine (at some future time) that we have several rovers of different types and capabilities on the surface of Mars ready to carry out missions to its different regions.
- There is also a hypothetical base station which acts as the central point from which the different rovers begin their exploratory missions and to which they return after mission completion.
- The base station basically assigns missions to the different rovers.
- Clone the repository
git clone https://github.com/AdhamAliAbdelAal/BuzzYateer
-
Main File is
Buzz Yateer\Buzz Yateer\Buzz Yateer.sln
- Read Project Description to undertand project vey well
- Put input in the Input.txt
- Run the main file.
- You should choose the mode of output.
-
1) Interactive Mode
Interactive Mode Allows user to monitor the missions and rovers. The program should print an output like that shown below. In this mode, the program prints the current day then pauses for an input from the user (โEnterโ key for example) to display the output of the next day -
2) Step-By-Step Mode
Step-By-Step Mode is identical to the interactive mode except that after each day, the program waits for one second (not for user input) then resumes automatically. -
4) Silent Mode
the program produces only an output file (See the โFile Formatsโ section
-
- No matter what mode of operation your program is running in, Output.txt file should be produced.
List Name | Chosen DS | Justification | |
---|---|---|---|
1 | Events List | Queue | First event declared will have been done first. Queue will be based on linked list because it Insert in the end. |
2 | Waiting Polar Missions | Queue | First mission declared will have been done first. Queue will be based on linked list because it easier to Insert in the end and delete from front. |
3 | Waiting Mountainous Missions | Queue | First mission declared will have been done first. Queue will be based on linked list because it. easier to Insert in the end and delete from front. |
4 | Waiting Emergency Missions | Priority Queue | Because we want to sort them according to their priority. Queue will be based on linked list because it easier to Insert in any position and delete from front. |
5 | Execution Missions | Priority Queue | Because we want to sort them according to the day will done on. Queue will be based on linked list because it easier to Insert in any position and delete from front. |
6 | Completed Missions | Queue | Because it will be print the completed mission every day. Queue will based on linked list because it easier to Insert in the end. |
7 | Polar Rovers | Priority Queue | Because we want to sort them according to their velocity. Queue will be based on linked list because it easier to Insert in any position and delete from front. |
8 | Mountainous Rovers | Priority Queue | Because we want to sort them according to their velocity. Queue will be based on linked list because it easier to Insert in any position and delete from front. |
9 | Emergency Rovers | Priority Queue | Because we want to sort them according to their velocity. Queue will be based on linked list because it easier to Insert in any position and delete from front. |
10 | Execution Rovers | Priority Queue | Because we want to sort them according to the day will done mission. Queue will be based on linked list because it easier to Insert in any position and delete from front. |
11 | Checkup Rovers | Priority Queue | Because we want to sort them according to less time will take in checkup. Queue will be based on linked list because it easier to Insert in any position and delete from front. |
12 | Rovers Maintenance | Priority Queue | Because we want to sort them according to less time will take in maintenance. |
Mohamed Walid |
Abdelrahman Ashraf |
Adham Ali |
Eslam Ashraf |
This software is licensed under MIT License, See License for more information ยฉAdhamAliAbdelAal.