Starting from:

$30

CSE201 Advanced Programming  Assignment 1 -Solved

1) The placement cell opens company registrations, following which students register for 
companies they are interested in. 
2) A student can register for a company if they meet the following criteria - 
a) If not placed yet and is eligible. 
b) CGPA of the student >= minimum CGPA criteria of the company 
c) CTC offered by the company >= 3 * highest CTC currently held by the student 
For example - a student has received an offer from a company ‘A’ with a CTC Rs. x, now 
this student can only register for a company ‘B’ if it offers a CTC >= 3*x, and also 
satisfies the CGPA criteria set by the company. 
3) Once the company receives all the registrations, it selects some students out of the ones 
who applied (a company has to select at least one student; students can be picked 
randomly for this question). 
4) The selected students have the option to accept or reject the offer. 
5) If a student accepts an offer, the status of that student should be marked as offered and 
should not be allowed to sit in any further processes (unless the student satisfies criteria 
2(b) and 2(c)). 
6) If a not yet placed student rejects all the available offers at any point, then the student 
status should be marked as blocked and shouldn’t be allowed to participate further. 
7) A company can register only once. 
NOTE: if a student gets selected in more than 1 company simultaneously, the student 
will get the offer with a higher package. 
You have to implement this system which should have the following functionalities.Student Functionalities 
1. Register For Placement Drive:- the student should be able to register for the placement 
drive and have the following details - 
a. Name 
b. Roll No. 
c. CGPA 
d. Branch 
2. Register For Company - An eligible student should be able to register for an available 
company and status should be changed to applied. By default the status should be 
“not-applied”. 
3. Get All available companies - Print all the companies and its details where the student 
can apply for. If a student doesn’t meet the criteria for sitting in further processes, print 
unavailable. 
4. Get Current Status - print the status of the student, whether blocked, offered, un-offered. 
If the student is offered, print the company from which the student got the offer from and 
its details. 
5. Update CGPA - the student should give the older CGPA and the new updated CGPA to 
the institute placement cell. The CGPA should be updated by the placement cell only. 
6. Accept / Reject offer - the student has a choice to accept / reject the latest offer available 
to him/her 
Institute-Placement Cell Functionalities 
1. Open Student Registrations - print that institute is open for student-registrations for the 
placement drive. Also set a deadline till when the students can apply. It should have a 
start and end date-time. 
NOTE: registrations for students can’t open before company registrations end. 
2. Open Company Registrations - print that the institute is open for company registrations 
for the placements. Also, set a deadline for the companies can register. It should have a 
start and end date and time. 
NOTE: you will need to maintain the date-time as an attribute of a company when it 
registers for placement process to check whether or not the company has applied before 
the deadline. 
3. Get Number of Student Registrations - print the number of students registered for the 
placement drive.4. Get Number of Company Registrations - print the number of companies registered for 
the placement drive. 
5. Get Number of Placed/UnPlaced/Blocked Students - print number of offered students 
with their details. 
Note: an unplaced student who rejects all available offers at any instant is blocked 
from placement cycle 
6. Get Student Details - it takes in the name and roll number of the student and prints 
details of the participation in the placement drive (details of the companies applied for 
and didn’t apply for. Also print whether the student was offered by the company or not). 
7. Get Company Details - it takes in the name of the company and prints the details of the 
company. Also print the names and roll no. of the students if the company has offered 
any student. 
8. Get Average Package: print the average package offered to the students of the institute. 
9. Get Company Process Results:- In this query, the company should send in a list of all 
the students they have selected to the cell. Take the company name as input in this 
case. 
Company Functionalities 
1. RegisterToInstituteDrive - to register for an institute’s placement drive you need to add 
following information. 
a. Name of the company 
b. Role a company offers 
c. Package being offered by the company 
d. CGPA criteria 
e. Registration date-time (when company registers for the placement process) 
Once registered you should print registered on the console. 
NOTE:- you are not required to register a company for multiple roles. For simplicity 
assume one company offers one type of role only. 
2. Get Selected Students - get all the selected students of the campus who will be offered. 
Print the names and details of the students (such as email ID, roll no, etc. ) 
3. Update Role/Package/CGPA criteria - using these options, the company can set the role 
and package and the CGPA criteria.For the demo of the working of the application, you are expected to add at least 1 company 
and 3 students. There should be different modes where you should be able to operate the 
portal. 
1. The Application should start when you type in “Enter FutureBuilder” 
2. On Entering we should get the following options 
a. Student mode: type 1 to switch to student mode where you perform only student 
queries. 
NOTE:- you will be asked 3 options to choose in student mode(as given in the 
test case). You can perform queries once student objects are created. 
b. Institute Placement Cell mode: type 2 to switch to placement cell mode where 
you perform only placement cell queries. 
c. Company mode : type 3 to switch to company mode where you perform only 
company queries. 
d. Type 4 to return back to the main application 
3. The Application should stop when you type in “Exit FutureBuilder” 
NOTE: No other mode queries should be made once you enter into a particular mode. For 
example if you enter student mode, you should not perform any queries apart from student 
queries without switching the mode. 
Input:- 
Welcome to FutureBuilder: 
1) Enter the Application 
2) Exit the Application 
1
Choose The mode you want to Enter in:- 
1) Enter as Student Mode 
2) Enter as Company Mode 
3) Enter as Placement Cell Mode 
4) Return To Main Application 
3Welcome to IIITD Placement Cell 
1) Open Student Registrations 
2) Open Company Registrations 
3) Get Number of Student Registrations 
4) Get Number of Company Registrations 
5) Get Number of Offered/Unoffered/Blocked Students 
6) Get Student Details 
7) Get Company Details 
8) Get Average Package 
9) Get Company Process Results 
10) Back 
2
Fill in the details:- 
1) Set the Opening time for company registrations 
2) Set the Closing time for company registrations 
18th September 2022, 17:00 PM 
18th September 2022, 17:02 PM 
10
Choose The mode you want to Enter in- 
1) Enter as Student Mode 
2) Enter as Company Mode 
3) Enter as Placement Cell Mode 
4) Return To Main Application 
2
Choose the Company Query to perform- 
1) Add Company and Details 
2) Choose Company 
3) Get Available Companies 
4) Back 
1
GooFlix // name 
SDE // role 
60 // CTC (in LPA) 
9 // minimum CGPA requirementChoose the Company Query to perform- 
1) Add Company and Details 
2) Choose Company 
3) Get Available Companies 
4) Back 
2
Choose To enter into mode of Available Companies:- 
1) GooFlix 
1
Welcome GooFlix 
1) Update Role 
2) Update Package 
3) Update CGPA criteria 
4) Register To Institute Drive 
5) Back 
1
Hardware 
Welcome GooFlix 
1) Update Role 
2) Update Package 
3) Update CGPA criteria 
4) Register To Institute Drive 
5) Back 
2
70 // CTC in LPA 
Welcome GooFlix 
1) Update Role 
2) Update Package 
3) Update CGPA criteria 
4) Register To Institute Drive 
5) Back4
18th September 2022, 17:01 PM // registration date-time 
Registered!!! 
Welcome GooFlix 
1) Update Role 
2) Update Package 
3) Update CGPA criteria 
4) Register To Institute Drive 
5) Back 
5
Choose the Company Query to perform- 
1) Add Company and Details 
2) Choose Company 
3) Get Available Companies 
4) Back 
4
Choose The mode you want to Enter in- 
1) Enter as Student Mode 
2) Enter as Company Mode 
3) Enter as Placement Cell Mode 
4) Return To Main Application 
3
Welcome IIITD Placement Cell 
1) Open Student Registrations 
2) Open Company Registrations 
3) Get Number of Student Registrations 
4) Get Number of Company Registrations 
5) Get Number of Offered/Unoffered/Blocked Students 
6) Get Student Details 
7) Get Company Details 
8) Get Average Package 
9) Get Company Process Results 
10) Back 
1Fill in the details:- 
1) Set the Opening time for Student registrations 
2) Set the Ending time for Student registrations. 
18th September 2022, 17:04 PM 
18th September 2022, 17:06 PM 
10
Choose The mode you want to Enter in- 
1) Enter as Student Mode 
2) Enter as Company Mode 
3) Enter as Placement Cell Mode 
4) Return To Main Application 
1
Choose the Student Query to perform- 
1) Enter as a Student(Give Student Name, and Roll No.) 
2) Add students 
3) Back 
2
Number of students to add 
3
Please add students Name, Roll No, CGPA, Branch(in order): 
Smarthak Gupta 
2029043 
9.17 
CSAM 
Bohit Mansal 
2029141 
8.79 
CSE 
Itachi Uchiha 
20292369.96 
CSAI 
Choose the Student Query to perform- 
1) Enter as a Student(Give Student Name, and Roll No.) 
2) Add students 
3) Back 
1 Smarthak Gupta 2029043 
Welcome Smarthak!! 
1) Register For Placement Drive 
2) Register For Company 
3) Get All available companies 
4) Get Current Status 
5) Update CGPA 
6) Accept offer 
7) Reject offer 
8) Back 
3
List of All available companies is as follows: 
1) CompanyName: GooFlix 
Company role offering: Hardware 
Company Package: 70 LPA 
Company CGPA criteria: 9 
1
18th September 2022, 17:05 PM // registration date-time 
Smarthak Registered for the Placement Drive at IIITD!!!! 
Your details are: 
Name: Smarthak Gupta 
RollNo: 2029043 
CGPA: 9.17 
Branch: CSAMWelcome Smarthak!! 
1) Register For Placement Drive 
2) Register For Company 
3) Get All available companies 
4) Get Current Status 
5) Update CGPA 
6) Accept offer 
7) Reject offer 
8) Back 
2 GooFlix 
Successfully Registered for Hardware Role at GooFlix!!!! 
Welcome Smarthak!! 
1) Register For Placement Drive 
2) Register For Company 
3) Get All available companies 
4) Get Current Status 
5) Update CGPA 
6) Accept offer 
7) Reject offer 
8) Back 
8
Choose the Student Query to perform- 
1) Enter as a Student(Give Student Name, and Roll No.) 
2) Add students 
3) Back 
3
Choose The mode you want to Enter in- 
1) Enter as Student Mode 
2) Enter as Company Mode 
3) Enter as Placement Cell Mode 
4) Return To Main Application 
3Welcome IIITD Placement Cell 
1) Open Student Registrations 
2) Open Company Registrations 
3) Get Number of Student Registrations 
4) Get Number of Company Registrations 
5) Get Number of Offered/Unoffered/Blocked Students 
6) Get Student Details 
7) Get Company Details 
8) Get Average Package 
9) Get Company Process Results 
10) Back 
9 GooFlix 
Following are the students selected- 
1) Name: Smarthak Gupta 
RollNo: 2029043 
CGPA: 9.17 
Branch: CSAM 
Welcome IIITD Placement Cell 
1) Open Student Registrations 
2) Open Company Registrations 
3) Get Number of Student Registrations 
4) Get Number of Company Registrations 
5) Get Number of Offered/Unoffered/Blocked Students 
6) Get Student Details 
7) Get Company Details 
8) Get Average Package 
9) Get Results 
10) Back 
10
Choose The mode you want to Enter in- 
1) Enter as Student Mode 
2) Enter as Company Mode 
3) Enter as Placement Cell Mode 
4) Return To Main Application1
Choose the Student Query to perform- 
1) Enter as a Student(Give Student Name, and Roll No.) 
2) Add students 
3) Back 
1 Smarthak Gupta 2029043 
Welcome Smarthak!! 
1) Register For Placement Drive 
2) Register For Company 
3) Get All available companies 
4) Get Current Status 
5) Update CGPA 
6) Accept offer 
7) Reject offer 
8) Back 
4
You have been offered by GooFlix!! Please accept the offer. 
Welcome Smarthak!! 
1) Register For Placement Drive 
2) Register For Company 
3) Get All available companies 
4) Get Current Status 
5) Update CGPA 
6) Accept offer 
7) Reject offer 
8) Back 
6
Congratulations Smarthak!!! You have accepted the offer by GooFlix!! 
8
Choose the Student Query to perform- 
1) Enter as a Student(Give Student Name, and Roll No.) 
2) Add students 
3) Back3
Choose The mode you want to Enter in- 
1) Enter as Student Mode 
2) Enter as Company Mode 
3) Enter as Placement Cell Mode 
4) Return To Main Application 
4
Welcome to FutureBuilder: 
1) Enter the Application 
2) Exit the Application 
2
Thanks For Using FutureBuilder!!!!!! 
____________________________________________________________________________

More products