يسعد ايامكم....

اتمنى منكم مساعدتي والله حاولت بهالسؤال من اسبوع لكن ماقدرت احله لاني مادرست الكلاس في سي بلس بلس...
وحاولت افهم من النت عنه وماقدرت....
ارجو منكم مساعدتي وربي لكم دعوة في ظهر الغيب....
"ومن فرج عن مسلم كربة فرج الله عنه كربة من كرب يوم القيامة"

راح اطرح السؤال لكن اتمنى اذا كان احد بيساعدني بالحل وعنده حل يرسله بالخاص لانه لو انتشر الحل وصار مع كل البنات راح ناخذ كلنا صفر

** تسليم هالواجب يوم الثلاثاء**
انا لقيت حل لجزء من المطلوب ...وهذا هو...

#include<iostream>
usingnamespace std;
#include<string>

class IntSLLNode
**
public:
IntSLLNode() ** next = 0; }
IntSLLNode(string n,int i,int l, IntSLLNode *ptr = 0)
** name=n;
level=1;
ID = i;
next = ptr; }
string name;
int level;
int ID;

IntSLLNode *next; };

class IntSLList **
public:
IntSLList() {head = tail =0; }
void AddToHead(string,int,int);
void DisplayList();
private:
IntSLLNode *head, *tail; };

void IntSLList::AddToHead(string n,int i,int l)
**
head = new IntSLLNode(n,i,l,head);
if (tail == 0)
tail = head;
}

void IntSLList::DisplayList()
{IntSLLNode *current;
current = head;
while(current != 0)
**
cout << current->name << " " << current->level << " " << current->ID << "\n";
current=current->next;
}
cout << "----------------------" << "\n";}


int main()
{string Name;
int Level,id;
int choice;
IntSLList mylist;
do**
cout<<"---------------------------------------------------"<<endl;
cout<<"1 add new student"<<endl;
cout<<"2 display list"<<endl;
cout<<"3 Exit"<<endl;
cout<<"enter your choice"<<endl;
cout<<"-----------------------------------------------"<<endl;

cin>>choice;

switch(choice)
**
case 1:


cout<<"enter student name"<<endl;
cin>>Name;
cout<<"enter student level"<<endl;
cin>>Level;
cout<<"enter student ID"<<endl;
cin>>id;
mylist.AddToHead(Name,id,Level);
break;



case 2:
mylist.DisplayList();
break;

case 3:
cout<<"Good Luck\n";
break;

default :
cout<<"Invalid Choice !\n";

}// end switch
}while ( choice != 3);

system("pause");
return 0;
}
وهذا السؤال المطلوب......

Course registration system is a system that allows students to register new courses according to the following condition:
1. Each course has a limited number of position (7 student at each course) to register.
2. Some courses require other courses as a prerequisite.
3. Course information consists of:
i. Course name
ii. Course ID
iii. No. of available positions
iv. Prerequisite (null in case no prerequisite required)
v. No. of hours.
4. The registration process starts with students who arrived first.
5. Semi graduate students have a higher priority than the other students when they register.
6. Each student have the following information:
i. Name
ii. ID
iii. Level
iv. Academic record( List of all completed courses and registered course and the grades for each course)
The operation that could be done for each student:
· Add course: if the course already full it will be waiting until one position become available
· Delete course: it requires updating student's academic record+ No. of available positions
· Get course information
· Get student information
· Print student's academic record

Task#1:

Implement the class SNode that contains all the student information, then make a list of student called: StudentList.
*Note: the academic record consists of:
· Course name:
· Corse ID: string
· Credit hours: int
· Grade: char (takes A, B, C, D, F and N in case not completed)
At the main you have to add the following students to the StudentList:
1- Student: Monirah Ahmad, ID: 430203207, Level:8, Academic Record:
{course id: cs141, course name: Programming 1, Credit hours: 4, Grade: C}
{course id: cs 101, course name: computer introduction, credit hours:3, Grade: B}
{course id: cs 121, course name: Digital Design, credit hours:4, Grade:B}
2- Student: Aishah AbdulKAreem, ID:430204398, Level: 8, Academic record: {course id: cs141, course name: Programming 1, Credit hours: 4, Grade: C}
{course id: cs 101, course name: computer introduction, credit hours:3, Grade: B}
{course id: cs 121, course name: Digital Design, credit hours:4, Grade:A}
{course id: cs302, course name: Operating System, Credit hours: 4, Grade: C}
{course id: cs 101, course name: computer introduction, credit hours:3, Grade: B}
{course id: cs 142, course name: Programming 2, credit hours:4, Grade:B}


3- Student: Maha Abdullah, ID: 434203208, Level: 1, Academic record: :null
4- Student: Mashael Abdullah, ID: 434203299, Level: 1, Academic record: :null
5- Student: Shatha Saleh, ID: 434203659, Level: 1, Academic record: :null
6- Student: Nourah Saad, ID: 434203820, Level: 1, Academic record: :null
7- Student: Fatimah Mohammad, ID: 4342030980, Level: 1, Academic record: :null
8- Student: Fatimah Bader, ID: 434203008, Level: 1, Academic record: :null
9- Student: Nourah Abdullah, ID: 434203790, Level: 1, Academic record: :null
10- Student: Fatimah Abdullah, ID: 432203208, Level: 4, Academic record: {Course id: course id: cs141, course name: Programming 1, Credit hours: 4, Grade: D}
{course id: cs 101, course name: computer introduction, credit hours:3, Grade: B}
{course id: cs 121, course name: Digital Design, credit hours:4, Grade: A}
11- Student: Amal Salem, ID: 432204207, Level: 4, Academic record:
{course id: cs141, course name: Programming 1, Credit hours: 4, Grade: A}
{course id: cs 101, course name: computer introduction, credit hours:3, Grade: A}
{course id: cs 121, course name: Digital Design, credit hours:4, Grade:A}

12- Student name: Abeer Mohammad, ID: 431204434, level: 6, Academic record:
{course id: cs141, course name: Programming 1, Credit hours: 4, Grade: C}
{course id: cs 101, course name: computer introduction, credit hours:3, Grade: B}
{course id: cs 121, course name: Digital Design, credit hours:4, Grade:A}
{course id: cs142, course name: Programming2, credit hours:4, Grade: B}

You will implement 4 classes:
1- StudentList: contains the following functions
i. Constructor (name, id, level)
ii. Display student: show all student without their academic record
iii. AddStudent: pones (): for each student you have to insert its academic record
2- StudentNode
3- AcademicRecord: contains the following functions:
i. Constructor (course id, course name, credit hours, grade)
ii. Display Academic record: prints all courses for a specific student.
4- AcademicRecordNode
وهذا شرح التيتشر منزلته للمساعدة
The idea:
The idea of the project is to implement a course registration system that allows the students to add or delete courses and allows the admin to add new students to the system and display registered students
Now for task 1 you have to make a list of students which each student have the following information:
1. Name
2. Id
3. Level
4. Academic record *
*Academic record: is a list of all registered courses for that student.
To visualizing the idea your structure should be looks like:
Student list

Name:Monirah Ahmad Name:MramAhmad ……….
ID: 430203207 ID:….
Level: 8 level:…….






Course 1 course 2 course3

Course 1 course 2 course3







Task 1 requirement:
· To complete this task you have to create 4 classes:
o Student node: this will contains all student information(name, id , level and academic record list)+ functions:
§ Constructor
§Deconstructor
o StudentList : this will contains the same information as a list + count to count the number of students in the list.+ the following functions:
§ Constructor
§ Deconstructor
§Add Students : add new student to the list by sending the student information (name, id, level) and add the new student at the end of the list
§ Display: to display all students information (name, id , level and academic record of each student)
o Academicrecord node: contains course information(Course name, id, grade credit hours)+ the following functions:
§ Constructor
§ Deconstructor
o Academic record list: contains the list information as usual+ Total: which represent the total number of registered courses+ the following functions:
§ Constructor
§ Deconstructor
§ Add course: add new course to the academic record by passing the course information to this function. The new course will be added to the end of the academic record list.
§ Display : which displays the academic record list for each student.

· In the main you have to create an object of class studentList and then you have to add the students (shown at previous document ) using add student function.
·For each added student you have to add its academic record by calling add course function using the academic record List object (which has been declared at the student class) in the main. (note the academic record List object must be public to use it in the main to call the add course function.

يااااااااااااااااااارب الاقي عندكم مساعدة...